From bbc06eb6f21c1df6f6880de155f8c6115a72c406 Mon Sep 17 00:00:00 2001 From: David Fugate Date: Wed, 23 Mar 2011 15:39:26 -0700 Subject: [PATCH] Now looked at all bugs.ecmascript.org test case issues up to and including https://bugs.ecmascript.org/show_bug.cgi?id=59. --- test/config/excludelist.xml | 10 +++++----- .../scripts/testcases/15.5_String_Objects.json | 2 +- website/resources/scripts/testcases/testcaseslist.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/test/config/excludelist.xml b/test/config/excludelist.xml index 6d8eaf503a..1758679ca1 100644 --- a/test/config/excludelist.xml +++ b/test/config/excludelist.xml @@ -163,12 +163,10 @@ https://bugs.ecmascript.org/show_bug.cgi?id=80 https://bugs.ecmascript.org/show_bug.cgi?id=80 - - https://bugs.ecmascript.org/show_bug.cgi?id=59 - https://bugs.ecmascript.org/show_bug.cgi?id=59 - https://bugs.ecmascript.org/show_bug.cgi?id=22 + https://bugs.ecmascript.org/show_bug.cgi?id=23 + https://bugs.ecmascript.org/show_bug.cgi?id=24 https://bugs.ecmascript.org/show_bug.cgi?id=25 @@ -194,7 +192,9 @@ https://bugs.ecmascript.org/show_bug.cgi?id=58 https://bugs.ecmascript.org/show_bug.cgi?id=58 - + + https://bugs.ecmascript.org/show_bug.cgi?id=59 + https://bugs.ecmascript.org/show_bug.cgi?id=59 https://bugs.ecmascript.org/show_bug.cgi?id=26 diff --git a/website/resources/scripts/testcases/15.5_String_Objects.json b/website/resources/scripts/testcases/15.5_String_Objects.json index f8b12b2520..d03efbf268 100644 --- a/website/resources/scripts/testcases/15.5_String_Objects.json +++ b/website/resources/scripts/testcases/15.5_String_Objects.json @@ -1 +1 @@ -{"testsCollection":{"name":"Chapter - 15.5_String_Objects","numTests":"579","tests":[{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyID0gU3RyaW5nKGZ1bmN0aW9uKCl7fSgpKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyhmdW5jdGlvbigpe30oKSk7IF9fc3RyID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDEpIGFuZCBTdHJpbmcoLTEpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoMSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICIxIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDEpOyBfX3N0ciA9PT0gIjEiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygtMSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoLTEpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiLTEiKSB7CiAgJEVSUk9SKCcjNDogX19zdHIgPSBTdHJpbmcoLTEpOyBfX3N0ciA9PT0gIi0xIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDExIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDEvMCkgYW5kIFN0cmluZygtMS8wKSwgYW5kIGNhbGwgd2l0aCArLy1JbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKDEvMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMS8wKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIkluZmluaXR5IikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDEvMCk7IF9fc3RyID09PSAiSW5maW5pdHkiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygtMS8wKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IFN0cmluZygtMS8wKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0ciAhPT0gIi1JbmZpbml0eSIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9IFN0cmluZygtMS8wKTsgX19zdHIgPT09ICItSW5maW5pdHkiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhJbmZpbml0eSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPSBTdHJpbmcoSW5maW5pdHkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3RyICE9PSAiSW5maW5pdHkiKSB7CiAgJEVSUk9SKCcjNjogX19zdHIgPSBTdHJpbmcoSW5maW5pdHkpOyBfX3N0ciA9PT0gIkluZmluaXR5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoLUluZmluaXR5KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzcKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM3OiBfX3N0ciA9IFN0cmluZygtSW5maW5pdHkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzgKaWYgKF9fc3RyICE9PSAiLUluZmluaXR5IikgewogICRFUlJPUignIzg6IF9fc3RyID0gU3RyaW5nKC1JbmZpbml0eSk7IF9fc3RyID09PSAiLUluZmluaXR5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzkKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM5OiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEwCmlmIChfX3N0ciAhPT0gIkluZmluaXR5IikgewogICRFUlJPUignIzEwOiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpOyBfX3N0ciA9PT0gIkluZmluaXR5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzExCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTE6IF9fc3RyID0gU3RyaW5nKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMTIKaWYgKF9fc3RyICE9PSAiLUluZmluaXR5IikgewogICRFUlJPUignIzEyOiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpOyBfX3N0ciA9PT0gIi1JbmZpbml0eSIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDEvXCJhXCIpLCBTdHJpbmcoXCJiXCIqIG51bGwpIGFuZCBTdHJpbmcoTnVtYmVyLk5hTikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IFN0cmluZygxLyJhIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMS8iYSIpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDEvImEiKTsgX19zdHIgPT09ICJOYU4iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygiYiIqbnVsbCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoImIiKm51bGwpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9PSAiTmFOIikgewogICRFUlJPUignIzQ6IF9fc3RyID0gU3RyaW5nKCJiIipudWxsKTsgX19zdHIgPT09ICJOYU4iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhOdW1iZXIuTmFOKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM1OiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuTmFOKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0ciAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuTmFOKTsgX19zdHIgPT09ICJOYU4iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.1.1_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEzIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKHRydWUpIGFuZCBTdHJpbmcoZmFsc2UpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcodHJ1ZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcodHJ1ZSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICJ0cnVlIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKHRydWUpOyBfX3N0ciA9PT0gInRydWUiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhmYWxzZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoZmFsc2UpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9PSAiZmFsc2UiKSB7CiAgJEVSUk9SKCcjNDogX19zdHIgPSBTdHJpbmcoZmFsc2UpOyBfX3N0ciA9PT0gImZhbHNlIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoQm9vbGVhbih0cnVlKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPSBTdHJpbmcoQm9vbGVhbih0cnVlKSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNgppZiAoX19zdHIgIT09ICJ0cnVlIikgewogICRFUlJPUignIzY6IF9fc3RyID0gU3RyaW5nKEJvb2xlYW4odHJ1ZSkpOyBfX3N0ciA9PT0gInRydWUiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhCb29sZWFuKGZhbHNlKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM3CmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjNzogX19zdHIgPSBTdHJpbmcoQm9vbGVhbihmYWxzZSkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzgKaWYgKF9fc3RyICE9PSAiZmFsc2UiKSB7CiAgJEVSUk9SKCcjODogX19zdHIgPSBTdHJpbmcoQm9vbGVhbihmYWxzZSkpOyBfX3N0ciA9PT0gImZhbHNlIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE0IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDApIGFuZCBTdHJpbmcoLTApIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMCk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICIwIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDApOyBfX3N0ciA9PT0gIjAiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygtMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoLTApOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiMCIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9IFN0cmluZygtMCk7IF9fc3RyID09PSAiMCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE1IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKHN0cmluZ19vYmplY3QpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmpfX3N0ciA9ICJjYXBzIjsKCi8vX19vYmpfX3N0ci5wcm9wPTE7Cgp2YXIgX19zdHIgPSBTdHJpbmcoX19vYmpfX3N0cik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ciAhPT0gX19vYmpfX3N0cikgewogICRFUlJPUignIzE6IF9fb2JqX19zdHIgPSAiY2FwcyI7IF9fc3RyID0gU3RyaW5nKF9fb2JqX19zdHIpOyBfX3N0ciA9PT0gX19vYmpfX3N0ci4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE2IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCAuMTIzNDUgYW5kIGFuYWxvZ291cyBudW1iZXJzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoLjEyMzQ1KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IFN0cmluZyguMTIzNDUpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiMC4xMjM0NSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyguMTIzNDUpOyBfX3N0ciA9PT0gIjAuMTIzNDUiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyguMDEyMzQ1KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IFN0cmluZyguMDEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0ciAhPT0gIjAuMDEyMzQ1IikgewogICRFUlJPUignIzQ6IF9fc3RyID0gU3RyaW5nKC4wMTIzNDUpOyBfX3N0ciA9PT0gIjAuMDEyMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoLjAwMTIzNDUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzU6IF9fc3RyID0gU3RyaW5nKC4wMDEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0ciAhPT0gIjAuMDAxMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IFN0cmluZyguMDAxMjM0NSk7IF9fc3RyID09PSAiMC4wMDEyMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoLjAwMDAwMDEyMzQ1KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzcKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM3OiBfX3N0ciA9IFN0cmluZyguMDAwMDAwMTIzNDUpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzgKaWYgKF9fc3RyICE9PSAiMS4yMzQ1ZS03IikgewogICRFUlJPUignIzg6IF9fc3RyID0gU3RyaW5nKC4wMDAwMDAxMjM0NSk7IF9fc3RyID09PSAiMS4yMzQ1ZS03Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE3IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCBudW1iZXJzIHRoYXQgaGF2ZSBtb3JlIHRoYW4gMSBzaWduaWZpY2FudCBkaWdpdCBhZnRlciBwb2ludCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKDEuMjM0NSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMS4yMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIjEuMjM0NSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZygxLjIzNDUpOyBfX3N0ciA9PT0gIjEuMjM0NSIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyID0gU3RyaW5nKDEuMjM0NTY3ODkwKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IFN0cmluZygxLjIzNDU2Nzg5MCk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zdHIgIT09ICIxLjIzNDU2Nzg5IikgewogICRFUlJPUignIzQ6IF9fc3RyID0gU3RyaW5nKDEuMjM0NTY3ODkwKTsgX19zdHIgPT09ICIxLjIzNDU2Nzg5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoMS4yMzQ1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzU6IF9fc3RyID0gU3RyaW5nKDEuMjM0NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0ciAhPT0gIjEuMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IFN0cmluZygxLjIzNDUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09PSAiMS4yMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE4IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCBudW1iZXJzIHRoYXQgaGF2ZSBtb3JlIHRoYW4gMSBzaWduaWZpY2FudCBkaWdpdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7ICAKICAgICAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyID0gU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiMWUrMjEiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09PSAiMWUrMjEiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9PSAiMWUrMjIiKSB7CiAgJEVSUk9SKCcjNDogX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyBfX3N0ciA9PT0gIjFlKzIyIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE5IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCBBcnJheSBvZiBudW1iZXJzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KDEsMiwzKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KDEsMiwzKSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICIxLDIsMyIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsgX19zdHIgPT09ICIxLDIsMyIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDIiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcobnVsbCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IFN0cmluZyhudWxsKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IFN0cmluZyhudWxsKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIm51bGwiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBTdHJpbmcobnVsbCk7IF9fc3RyID09PSAibnVsbCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDMiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcodm9pZCAwKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKHZvaWQgMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcodm9pZCAwKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyh2b2lkIDApOyBfX3N0ciA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDQiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcodW5kZWZpbmVkKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKHVuZGVmaW5lZCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcodW5kZWZpbmVkKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyh1bmRlZmluZWQpOyBfX3N0ciA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDUiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoeCksIHdoZXJlIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoeCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9fc3RyID0gU3RyaW5nKHgpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzI6IHZhciB4OyBfX3N0ciA9IFN0cmluZyh4KTsgX19zdHIgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDYiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCwgQ2FsbCBTdHJpbmcoZXZhbCgpKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKGV2YWwoKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoZXZhbCgpKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyhldmFsKCkpOyBfX3N0ciA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDciLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoe30pIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoe30pOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyID0gU3RyaW5nKHt9KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIltvYmplY3QgIisiT2JqZWN0IisiXSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyh7fSk7IF9fc3RyID09PSAiW29iamVjdCBPYmplY3RdIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDgiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcobmV3IEFycmF5KSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2xkX19BcnJheV9fcHJvdG90eXBlX190b1N0cmluZyA9IEFycmF5LnByb3RvdHlwZS50b1N0cmluZzsKCkFycmF5LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAiX19BUlJBWV9fIjt9OwoKdmFyIF9fc3RyID0gU3RyaW5nKG5ldyBBcnJheSk7CgovLyByZXN0b3JlIG9sZCB0b1N0cmluZyBtZXRob2QganVzdCBpbiBjYXNlCkFycmF5LnByb3RvdHlwZS50b1N0cmluZz1fX29sZF9fQXJyYXlfX3Byb3RvdHlwZV9fdG9TdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIl9fQVJSQVlfXyIpIHsKICAkRVJST1IoJyMyOiBBcnJheS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gIl9fQVJSQVlfXyI7fTsgX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KTsgX19zdHIgPT09ICJfX0FSUkFZX18iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.1.1_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTJfVDEiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZygpOyBfX3N0ciA9PT0gIiIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIGV4cHJlc3Npb24gXCJuZXcgU3RyaW5nXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSAiIikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZzsgX19zdHIgPT0gIiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKCBfX3N0ciA9PT0gIiIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IG5ldyBTdHJpbmc7IF9fc3RyICE9PSAiIicpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiIGFzIHRoZSBmdW5jdGlvbiBvYmplY3RcJ3MgcHJvdG90eXBlLnRvU3RyaW5nIHByb3BlcnR5IHdhcyBjaGFuZ2VkIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt9OwoKX19GQUNUT1JZLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAidG9zdHIifTsKCnZhciBfX29iaiA9IG5ldyBfX0ZBQ1RPUlk7Cgp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoX19vYmopOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0gInRvc3RyIikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7IF9fc3RyID09InRvc3RyIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDExIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiIGFmdGVyIGNoYW5naW5nIGZ1bmN0aW9uIG9iamVjdFwncyB2YWx1ZU9mIGFuZCB0b1N0cmluZyBwcm9wZXJ0aWVzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX29iaigpe307CgpfX29iai52YWx1ZU9mPWZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fTsKCl9fb2JqLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHt9O307Cgp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsKCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uIF9fb2JqKCl7fTsgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9InRydWUiKSB7CiAgJEVSUk9SKCcjMjogZnVuY3Rpb24gX19vYmooKXt9OyBfX3N0ciA9IG5ldyBTdHJpbmcoX19vYmopOyBfX3N0ciA9PSJ0cnVlIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiLCBhZnRlciBjaGFuZ2luZyB0aGUgZnVuY3Rpb24gb2JqZWN0IHRvU3RyaW5nIHByb3BlcnR5LCB3aGljaCBjYXVzZXMgZXhjZXB0aW9uIHRocm93IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciJ9fTsKCl9fb2JqLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdHJ1ZX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIifX07IF9fc3RyID0gbmV3IFN0cmluZyhfX29iaikgbGVhZCB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IGU9PT0iaW50b3N0ciIuIEFjdHVhbDogZT09PScrZSk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEzIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiIGFmdGVyIGNoYW5naW5nIGZ1bmN0aW9uIG9iamVjdFwncyB2YWx1ZU9mIHByb3BlcnR5LCB3aGljaCBjYXVzZXMgZXhjZXB0aW9uIHRocm93IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gZjsgZnVuY3Rpb24gZigpe319fTsKCl9fb2JqLnZhbHVlT2Y9ZnVuY3Rpb24oKXt0aHJvdyAiaW52YWx1ZW9mIn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7CiAgJEVSUk9SKCcjMTogX19vYmoudmFsdWVPZj1mdW5jdGlvbigpe3Rocm93ICJpbnZhbHVlb2YifTsgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKSBsZWFkIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW52YWx1ZW9mIikgewogICAgJEVSUk9SKCcjMS4xOiBlPT09ImludmFsdWVvZiIuIEFjdHVhbDogZT09PScrZSk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE2IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoKVwiIGluaXRpYWxpemVkIHdpdGggLjEyMzQ1IGFuZCBvdGhlciBudW1iZXJzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBfX3N0ciA9bmV3IFN0cmluZyguMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPW5ldyBTdHJpbmcoLjEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID1uZXcgU3RyaW5nKC4xMjM0NSk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9IjAuMTIzNDUiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPW5ldyBTdHJpbmcoLjEyMzQ1KTsgX19zdHIgPT0iMC4xMjM0NSIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPW5ldyAgU3RyaW5nKC4wMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPW5ldyAgU3RyaW5nKC4wMTIzNDUpOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzMuNTogX19zdHIgPW5ldyAgU3RyaW5nKC4wMTIzNDUpOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0ciAhPSIwLjAxMjM0NSIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9bmV3ICBTdHJpbmcoLjAxMjM0NSk7IF9fc3RyID09IjAuMDEyMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9bmV3ICBTdHJpbmcoLjAwMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPW5ldyAgU3RyaW5nKC4wMDEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1LjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyM1LjU6IF9fc3RyID1uZXcgIFN0cmluZyguMDAxMjM0NSk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3RyICE9IjAuMDAxMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9bmV3ICBTdHJpbmcoLjAwMTIzNDUpOyBfX3N0ciA9PSIwLjAwMTIzNDUiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyID1uZXcgIFN0cmluZyguMDAwMDAwMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM3CmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjNzogX19zdHIgPW5ldyAgU3RyaW5nKC4wMDAwMDAxMjM0NSk7IHR5cGVvZiBfX3N0ciA9PT0gIm9iamVjdCIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNy41CmlmIChfX3N0ci5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjNy41OiBfX3N0ciA9bmV3ICBTdHJpbmcoLjAwMDAwMDEyMzQ1KTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjOAppZiAoX19zdHIgIT0iMS4yMzQ1ZS03IikgewogICRFUlJPUignIzg6IF9fc3RyID1uZXcgIFN0cmluZyguMDAwMDAwMTIzNDUpOyBfX3N0ciA9PSIxLjIzNDVlLTciLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE3IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoKVwiIGluaXRpYWxpemVkIHdpdGggbnVtYmVycyB0aGF0IGhhdmUgbW9yZSB0aGFuIDEgc2lnbmlmaWNhbnQgZGlnaXQgZm9sbG93aW5nIHRoZSBwb2ludCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gbmV3IFN0cmluZygxLjIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMjM0NSk7IHR5cGVvZiBfX3N0ciA9PT0gIm9iamVjdCIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMS41CmlmIChfX3N0ci5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMS41OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1KTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iMS4yMzQ1IikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZygxLjIzNDUpOyBfX3N0ciA9PSIxLjIzNDUiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyID0gbmV3IFN0cmluZygxLjIzNDU2Nzg5MCk7Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1Njc4OTApOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzMuNTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMjM0NTY3ODkwKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zdHIgIT0iMS4yMzQ1Njc4OSIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1Njc4OTApOyBfX3N0ciA9PSIxLjIzNDU2Nzg5Ii4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMjM0NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1LjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyM1LjU6IF9fc3RyID0gbmV3IFN0cmluZygxLjIzNDUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3RyICE9IjEuMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyBfX3N0ciA9PSIxLjIzNDUiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE4IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0ZSBzdHJpbmcgb2JqZWN0IHdpdGggXCJuZXcgU3RyaW5nKClcIiBpbml0aWFsaXplZCB3aXRoIG51bWJlcnMgdGhhdCBoYXZlIG1vcmUgdGhhbiAxIHNpZ25pZmljYW50IGRpZ2l0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSIxZSsyMSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09IjFlKzIxIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IG5ldyBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMzLjU6IF9fc3RyID0gbmV3IFN0cmluZygxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9IjFlKzIyIikgewogICRFUlJPUignIzQ6IF9fc3RyID0gbmV3IFN0cmluZygxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09IjFlKzIyIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE5IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoKVwiIGluaXRpYWxpemVkIHdpdGggQXJyYXkgb2YgbnVtYmVycyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyID0gbmV3IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iMSwyLDMiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBuZXcgU3RyaW5nKG5ldyBBcnJheSgxLDIsMykpOyBfX3N0ciA9PSIxLDIsMyIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDIiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZygpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZygpOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSIiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBuZXcgU3RyaW5nKCk7IF9fc3RyID09IiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIF9fc3RyID09PSAiIikgewogICRFUlJPUignIzM6IF9fc3RyID0gbmV3IFN0cmluZygpOyBfX3N0ciAhPT0gIiInKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDMiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhcIlwiKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoIiIpOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKCIiKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iIikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZygiIik7IF9fc3RyID09IiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIF9fc3RyID09PSAiIikgewogICRFUlJPUignIzM6IF9fc3RyID0gbmV3IFN0cmluZygiIik7IF9fc3RyICE9PSAiIicpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDQiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoMS4wKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKDEuMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMCk7IHR5cGVvZiBfX3N0ciA9PT0gIm9iamVjdCIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMS41CmlmIChfX3N0ci5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMS41OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4wKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0xLjArIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4wKTsgX19zdHIgPT0xLjArIiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDUiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhOYU4pXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmcoTmFOKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoTmFOKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhOYU4pOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSgxLyJzIikrIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoTmFOKTsgX19zdHIgPT0oMS8icyIpKyIiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDYiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhmYWxzZSlcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhmYWxzZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKGZhbHNlKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhmYWxzZSk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9ZmFsc2UrIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoZmFsc2UpOyBfX3N0ciA9PWZhbHNlKyIiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDciLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyh7fSlcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RvcmVkX19PYmplY3RfX3Byb3RvdHlwZV9fdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwoKT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAiU0hJRlRFRCJ9OwoKdmFyIF9fc3RyID0gbmV3IFN0cmluZyh7fSk7CgpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nID0gX19zdG9yZWRfX09iamVjdF9fcHJvdG90eXBlX190b1N0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoe30pOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKHt9KTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iU0hJRlRFRCIpIHsKICAkRVJST1IoJyMyOiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuICJTSElGVEVEIn07IF9fc3RyID0gbmV3IFN0cmluZyh7fSk7IF9fc3RyID09IlNISUZURUQiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDgiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhmdW5jdGlvbigpe30pXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0b3JlZF9fRnVuY3Rpb25fX3Byb3RvdHlwZV9fdG9TdHJpbmcgPSBGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7CgpGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gIlNISUZURUQifTsKCnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KTsKCkZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZyA9IF9fc3RvcmVkX19GdW5jdGlvbl9fcHJvdG90eXBlX190b1N0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe30pOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSJTSElGVEVEIikgewogICRFUlJPUignIzI6IEZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAiU0hJRlRFRCJ9OyBfX3N0ciA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KTsgX19zdHIgPT0iU0hJRlRFRCIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDkiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhmdW5jdGlvbigpe3JldHVybiBbMSwyLDNdfSgpKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKGZ1bmN0aW9uKCl7cmV0dXJuIFsxLDIsM119KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe3JldHVybiBbMSwyLDNdfSgpKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe3JldHVybiBbMSwyLDNdfSgpKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iMSwyLDMiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBuZXcgU3RyaW5nKGZ1bmN0aW9uKCl7cmV0dXJuIFsxLDIsM119KCkpOyBfX3N0ciA9PSIxLDIsMyIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTJfVDEiLAoKcGF0aDogIjE1LjUuMi4xLCAxNS41LjMuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoc3RyaW5nKVwiIHRvIGNoZWNrIHByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyX19vYmogPSBuZXcgU3RyaW5nKCJhYmJhIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX3N0cl9fb2JqKSkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJfX29iaiA9IG5ldyBTdHJpbmcoImFiYmEiKTsgU3RyaW5nLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9fc3RyX19vYmopPT09dHJ1ZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgogfQp9KTsKCg==","id":"S15.5.2.1_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTJfVDIiLAoKcGF0aDogIjE1LjUuMi4xLCAxNS41LjMuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoc3RyaW5nKVwiIGFkZGluZyBjdXN0b20gcHJvcGVydHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2hvY2tpbmcgYmx1ZSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJfX29ialsiX19jdXN0b21fX3Byb3AiXSE9PXVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2hvY2tpbmcgYmx1ZSIpOyBfX3N0cl9fb2JqWyJfX2N1c3RvbV9fcHJvcCJdPT09dW5kZWZpbmVkLiBBY3R1YWw6IF9fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl09PT0nK19fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl0pOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KClN0cmluZy5wcm90b3R5cGUuX19jdXN0b21fX3Byb3AgPSAiYm9yIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl0hPT0iYm9yIikgewogICRFUlJPUignIzI6IHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2hvY2tpbmcgYmx1ZSIpOyBTdHJpbmcucHJvdG90eXBlLl9fY3VzdG9tX19wcm9wID0gImJvciI7IF9fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl09PT0iYm9yIi4gQWN0dWFsOiBfX3N0cl9fb2JqWyJfX2N1c3RvbV9fcHJvcCJdPT09JytfX3N0cl9fb2JqWyJfX2N1c3RvbV9fcHJvcCJdKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKCiB9Cn0pOwoK","id":"S15.5.2.1_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTMiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhzdHJpbmcpXCIgYW5kIGNoYW5naW5nIHRvU3RyaW5nIHByb3BlcnR5IHRvIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2VhbWFpZCIpOwoKX19zdHJfX29iai50b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cl9fb2JqLnRvU3RyaW5nKCkgIT09ICJbb2JqZWN0ICIrIlN0cmluZyIrIl0iKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyX19vYmogPSBuZXcgU3RyaW5nKCJzZWFtYWlkIik7IF9fc3RyX19vYmoudG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOyBfX3N0cl9fb2JqLnRvU3RyaW5nKCkgPT09ICJbb2JqZWN0IFN0cmluZ10iLiBBY3R1YWw6IF9fc3RyX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.2.1_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTEiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcuaGFzT3duUHJvcGVydHkoXCdwcm90b3R5cGVcJykiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcuaGFzT3duUHJvcGVydHkoXCdwcm90b3R5cGVcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.3.1_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTIiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZSBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLmhhc093blByb3BlcnR5KFwncHJvdG90eXBlXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzEKaWYgKFN0cmluZy5wcm9wZXJ0eUlzRW51bWVyYWJsZSgncHJvdG90eXBlJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvcGVydHlJc0VudW1lcmFibGUoXCdwcm90b3R5cGVcJykgcmV0dXJuIGZhbHNlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzIKdmFyIGNvdW50PTA7Cgpmb3IgKHAgaW4gU3RyaW5nKXsKICBpZiAocD09PSJwcm90b3R5cGUiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nKXsgaWYgKHA9PT0icHJvdG90eXBlIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiBjb3VudCA9PT0nK2NvdW50ICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.3.1_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTMiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZSBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKSkgewogICRGQUlMKCcjMTogU3RyaW5nLmhhc093blByb3BlcnR5KFwncHJvdG90eXBlXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpkZWxldGUgU3RyaW5nLnByb3RvdHlwZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSkpIHsKICAkRVJST1IoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZTsgU3RyaW5nLmhhc093blByb3BlcnR5KFwncHJvdG90eXBlXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.3.1_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTQiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiB2YXJ5aW5nIHRoZSBTdHJpbmcucHJvdG90eXBlIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5oYXNPd25Qcm9wZXJ0eSgncHJvdG90eXBlJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcuaGFzT3duUHJvcGVydHkoXCdwcm90b3R5cGVcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGU7CgpTdHJpbmcucHJvdG90eXBlID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZTsgU3RyaW5nLnByb3RvdHlwZSA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlID09PSBfX29iai4gQWN0dWFsOiBTdHJpbmcucHJvdG90eXBlID09PScrU3RyaW5nLnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.3.1_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTEiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLmZyb21DaGFyQ29kZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBTdHJpbmcuZnJvbUNoYXJDb2RlICE9PSAiZnVuY3Rpb24iKSB7CiAgJEVSUk9SKCcjMTogdHlwZW9mIFN0cmluZy5mcm9tQ2hhckNvZGUgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIFN0cmluZy5mcm9tQ2hhckNvZGUgPT09Jyt0eXBlb2YgU3RyaW5nLmZyb21DaGFyQ29kZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoU3RyaW5nLmhhc093blByb3BlcnR5KCJmcm9tQ2hhckNvZGUiKSkpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcuaGFzT3duUHJvcGVydHkoImZyb21DaGFyQ29kZSIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCJmcm9tQ2hhckNvZGUiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChTdHJpbmcuZnJvbUNoYXJDb2RlLmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzM6IFN0cmluZy5mcm9tQ2hhckNvZGUubGVuZ3RoID09PSAxLiBBY3R1YWw6IFN0cmluZy5mcm9tQ2hhckNvZGUubGVuZ3RoID09PScrU3RyaW5nLmZyb21DaGFyQ29kZS5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.3.2_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTIiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcuZnJvbUNoYXJDb2RlKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5mcm9tQ2hhckNvZGUoKSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcuZnJvbUNoYXJDb2RlICgpIHJldHVybnMgZW1wdHkgc3RyaW5nLiBBY3R1YWw6ICcrU3RyaW5nLmZyb21DaGFyQ29kZSgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.3.2_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTNfVDEiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcuZnJvbUNoYXJDb2RlKDY1LDY2LDY2LDY1KSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLmZyb21DaGFyQ29kZSg2NSw2Niw2Niw2NSkgIT09ICJBQkJBIikgewogICRFUlJPUignIzE6IFN0cmluZy5mcm9tQ2hhckNvZGUoNjUsNjYsNjYsNjUpID09PSAiQUJCQSIuIEFjdHVhbDogU3RyaW5nLmZyb21DaGFyQ29kZSg2NSw2Niw2Niw2NSkgPT09JytTdHJpbmcuZnJvbUNoYXJDb2RlKDY1LDY2LDY2LDY1KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.3.2_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTNfVDIiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIGZ1bmN0aW9uIHZhcmlhYmxlLCB0aGF0IGVxdWFsIFN0cmluZy5mcm9tQ2hhckNvZGUsIGRlbGV0ZSBvcmlnaW5hbCBTdHJpbmcuZnJvbUNoYXJDb2RlIGFuZCB1c2UgY3JlYXRlZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fZmNjX19mdW5jID0gU3RyaW5nLmZyb21DaGFyQ29kZTsKCmRlbGV0ZSBTdHJpbmcuZnJvbUNoYXJDb2RlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mY2NfX2Z1bmMoNjUsNjYsNjYsNjUpICE9PSAiQUJCQSIpIHsKICAkRVJST1IoJyMxOiBfX2ZjY19fZnVuYyA9IFN0cmluZy5mcm9tQ2hhckNvZGU7IGRlbGV0ZSBTdHJpbmcuZnJvbUNoYXJDb2RlOyBfX2ZjY19fZnVuYyg2NSw2Niw2Niw2NSkgPT09ICJBQkJBIi4gQWN0dWFsOiBfX2ZjY19fZnVuYyg2NSw2Niw2Niw2NSkgPT09JytfX2ZjY19fZnVuYyg2NSw2Niw2Niw2NSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.3.2_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTQiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgXCJuZXcgU3RyaW5nLmZyb21DaGFyQ29kZVwiIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19mY2NfX2Z1bmMgPSBTdHJpbmcuZnJvbUNoYXJDb2RlOwoKZGVsZXRlIFN0cmluZy5mcm9tQ2hhckNvZGU7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIF9fb2JqID0gbmV3IF9fZmNjX19mdW5jKDY1LDY2LDY2LDY1KTsKICAkRkFJTCgnIzE6IF9fZmNjX19mdW5jID0gU3RyaW5nLmZyb21DaGFyQ29kZTsgdmFyIF9fb2JqID0gbmV3IF9fZmNjX19mdW5jKDY1LDY2LDY2LDY1KSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.3.2_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zX0ExIiwKCnBhdGg6ICIxNS41LjMsIDE1LjUuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMKaWYgKFN0cmluZy5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJ1N0cmluZyBoYXMgbGVuZ3RoIHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIDEuIEFjdHVhbDogU3RyaW5nLmxlbmd0aD09PScrU3RyaW5nLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.3_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zX0EyX1QxIiwKCnBhdGg6ICIxNS41LjMsIDE1LjUuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIEZ1bmN0aW9uLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKFN0cmluZykiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMKaWYgKCEoRnVuY3Rpb24ucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nKSkpIHsKICAkRVJST1IoJyMxOiBGdW5jdGlvbi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihTdHJpbmcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrRnVuY3Rpb24ucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.3_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zX0EyX1QyIiwKCnBhdGg6ICIxNS41LjMsIDE1LjUuNCIsCgpkZXNjcmlwdGlvbjogIkFkZCBjdXN0b20gcHJvcGVydHkgdG8gRnVuY3Rpb24ucHJvdG90eXBlIGFuZCBjaGVjayBpdCBhdCBTdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIEZ1bmN0aW9uLnByb3RvdHlwZS5pbmRpY2F0b3IgPSAxOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIwppZiAoU3RyaW5nLmluZGljYXRvciAhPT0gMSkgewogICRFUlJPUignIzE6IEZ1bmN0aW9uLnByb3RvdHlwZS5pbmRpY2F0b3IgPSAxOyBTdHJpbmcuaW5kaWNhdG9yID09PSAxLiBBY3R1YWw6IFN0cmluZy5pbmRpY2F0b3IgPT09JytTdHJpbmcuaW5kaWNhdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.3_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjFfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IFN0cmluZy5wcm90b3R5cGUuY29uc3RydWN0b3IgPT09JytTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjFfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yIG9iamVjdCBhbmQgY2hlY2sgaXQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2NvbnN0ciA9IFN0cmluZy5wcm90b3R5cGUuY29uc3RydWN0b3I7Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX2NvbnN0cigiY2hvb3Npbmcgb25lIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMAppZiAoX19pbnN0YW5jZSAhPSJjaG9vc2luZyBvbmUiKSB7CiAgJEVSUk9SKCcjMDogX19jb25zdHIgPSBTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yOyBfX2luc3RhbmNlID0gbmV3IF9fY29uc3RyKCJjaG9vc2luZyBvbmUiKTsgX19pbnN0YW5jZSA9PSJjaG9vc2luZyBvbmUiLiBBY3R1YWw6IF9faW5zdGFuY2UgPT0nK19faW5zdGFuY2UgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMTogX19jb25zdHIgPSBTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yOyBfX2luc3RhbmNlID0gbmV3IF9fY29uc3RyKCJjaG9vc2luZyBvbmUiKTsgX19pbnN0YW5jZS5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9faW5zdGFuY2UuY29uc3RydWN0b3IgPT09JytfX2luc3RhbmNlLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzIKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9faW5zdGFuY2UpKSkgewogICRFUlJPUignIzI6IF9fY29uc3RyID0gU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjsgX19pbnN0YW5jZSA9IG5ldyBfX2NvbnN0cigiY2hvb3Npbmcgb25lIik7IFN0cmluZy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2luc3RhbmNlKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2luc3RhbmNlKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzMKdmFyIF9fdG9fc3RyaW5nX3Jlc3VsdCA9ICdbb2JqZWN0ICcrICdTdHJpbmcnICsnXSc7CgpkZWxldGUgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZzsKCmlmIChfX2luc3RhbmNlLnRvU3RyaW5nKCkgIT09IF9fdG9fc3RyaW5nX3Jlc3VsdCkgewogICRFUlJPUignIzM6IF9fY29uc3RyID0gU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjsgX19pbnN0YW5jZSA9IG5ldyBfX2NvbnN0cigiY2hvb3Npbmcgb25lIik7IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOyBfX2luc3RhbmNlLnRvU3RyaW5nKCkgPT09IF9fdG9fc3RyaW5nX3Jlc3VsdC4gQWN0dWFsOiBfX2luc3RhbmNlLnRvU3RyaW5nKCkgPT09JytfX2luc3RhbmNlLnRvU3RyaW5nKCkrJyBfX3RvX3N0cmluZ19yZXN1bHQgPT09JytfX3RvX3N0cmluZ19yZXN1bHQgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.1_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcobnVtYmVyKSBhbmQgY2hlY2sgaXRgcyBtZXRob2QgdG9TdHJpbmcoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKDEpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgIT09ICIiKzEpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygxKTsgX19zdHJpbmdfX29iai50b1N0cmluZygpID09PSAiIisxLiBBY3R1YWw6IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyaW5nX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.2_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcoYm9vbGVhbikgYW5kIGNoZWNrIGl0YHMgbWV0aG9kIHRvU3RyaW5nKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyh0cnVlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAoX19zdHJpbmdfX29iai50b1N0cmluZygpICE9PSAiIit0cnVlKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcodHJ1ZSk7IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0gIiIrdHJ1ZS4gQWN0dWFsOiBfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgPT09JytfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.2_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcoc3RyaW5nKSBhbmQgY2hlY2sgaXRgcyBtZXRob2QgdG9TdHJpbmcoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKCJtZXRhbCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgIT09ICJtZXRhbCIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygibWV0YWwiKTsgX19zdHJpbmdfX29iai50b1N0cmluZygpID09PSAibWV0YWwiLiBBY3R1YWw6IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyaW5nX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.2_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpIGFuZCBjaGVjayBpdGBzIG1ldGhvZCB0b1N0cmluZygpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOyBfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyaW5nX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.2_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTJfVDEiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdmFyaWFibGUgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZyBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fdG9TdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fdG9TdHJpbmcgIT09ICJmdW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiBfX3RvU3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZzsgdHlwZW9mIF9fdG9TdHJpbmcgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fdG9TdHJpbmcgPT09Jyt0eXBlb2YgX190b1N0cmluZyApOyAKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCnRyeSB7CiAgdmFyIHggPSBfX3RvU3RyaW5nKCk7CiAgJEZBSUwoJyMyOiAiX190b1N0cmluZyA9IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmc7IHZhciB4ID0gX190b1N0cmluZygpOyIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMyLjE6ICJfX3RvU3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZzsgdmFyIHggPSBfX3RvU3RyaW5nKCk7IiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbi4gRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.2_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTJfVDIiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIG9iamVjdCBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmo9e3RvU3RyaW5nIDogU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZ307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19vYmpbInRvU3RyaW5nIl0gIT09ICJmdW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19vYmo9e3RvU3RyaW5nIDogU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZ307IHR5cGVvZiBfX29ialsidG9TdHJpbmciXSA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19vYmpbInRvU3RyaW5nIl0gPT09Jyt0eXBlb2YgX19vYmpbInRvU3RyaW5nIl0gKTsgCn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp0cnkgewogIHZhciB4ID0gKF9fb2JqID09IDEpOwogICRGQUlMKCcjMjogInZhciB4ID0gKF9fb2JqID09IDEpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzIuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.2_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTNfVDEiLAoKcGF0aDogIjE1LjUuNC4yLCAxNS41LjQuMyIsCgpkZXNjcmlwdGlvbjogIkNyZWF0ZSBuZXcgU3RyaW5nKCkgd2l0aCB2YXJpb3VzIGFyZ3VtZW50cyBhbmQgY29tcGFyZSByZXR1cm5lZCByZXN1bHRzIG9mIHRvU3RyaW5nKCkgYW5kIHZhbHVlT2YoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy9DSEVDSyMxCnZhciBzdHIgPSBuZXcgU3RyaW5nKCk7CmlmKCEoc3RyLnZhbHVlT2YoKSA9PSBzdHIudG9TdHJpbmcoKSkpCiAgJEVSUk9SKCcjMTogc3RyID0gbmV3IFN0cmluZygpLHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCknKTsKCi8vQ0hFQ0sjMgpzdHIgPSBuZXcgU3RyaW5nKHRydWUpOwppZighKHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCkpKQogICRFUlJPUignIzI6IHN0ciA9IG5ldyBTdHJpbmcodHJ1ZSksc3RyLnZhbHVlT2YoKSA9PSBzdHIudG9TdHJpbmcoKScpOwoKLy9DSEVDSyMzCnN0ciA9IG5ldyBTdHJpbmcoZmFsc2UpOwppZighKHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCkpKQogICRFUlJPUignIzM6IHN0ciA9IG5ldyBTdHJpbmcoZmFsc2UpLHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCknKTsKCi8vQ0hFQ0sjNApzdHIgPSBuZXcgU3RyaW5nKE1hdGguUEkpOwppZighKHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCkpKQogICRFUlJPUignIzQ6IHN0ciA9IG5ldyBTdHJpbmcoTWF0aC5QSSksc3RyLnZhbHVlT2YoKSA9PSBzdHIudG9TdHJpbmcoKScpOwoKIH0KfSk7Cgo=","id":"S15.5.4.2_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZy5sZW5ndGggcHJvcGVydHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZy5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykhPT10cnVlKXsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpPT09dHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9TdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KZWxzZXsKLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nLmxlbmd0aCE9PTApCiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZy5sZW5ndGg9PT0wLiBBY3R1YWw6IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcubGVuZ3RoPT09JytTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nLmxlbmd0aCk7IAp9CgogfQp9KTsKCg==","id":"S15.5.4.2_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZygxKSBhbmQgY2hlY2sgaXRgcyB2YWx1ZU9mKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygxKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAoX19zdHJpbmdfX29iai52YWx1ZU9mKCkgIT09ICIiKzEpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygxKTsgX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09ICIiKzEuIEFjdHVhbDogX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09JytfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.3_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZyh0cnVlKSBhbmQgY2hlY2sgaXRgcyB2YWx1ZU9mKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyh0cnVlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAoX19zdHJpbmdfX29iai52YWx1ZU9mKCkgIT09ICIiK3RydWUpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyh0cnVlKTsgX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09ICIiK3RydWUuIEFjdHVhbDogX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09JytfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.3_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZyhzdHJpbmcpIGFuZCBjaGVjayBpdGBzIHZhbHVlT2YoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKCJtZXRhbCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSAhPT0gIm1ldGFsIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKCJtZXRhbCIpOyBfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSA9PT0gIm1ldGFsIi4gQWN0dWFsOiBfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSA9PT0nK19fc3RyaW5nX19vYmoudmFsdWVPZigpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.3_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZyhmdW5jdGlvbigpe30oKSkgYW5kIGNoZWNrIGl0YHMgdmFsdWVPZigpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe30oKSk7IF9fc3RyaW5nX19vYmoudmFsdWVPZigpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiBfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSA9PT0nK19fc3RyaW5nX19vYmoudmFsdWVPZigpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.3_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTJfVDEiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdmFyaWFibGUgU3RyaW5nLnByb3RvdHlwZS52YWx1ZU9mIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX192YWx1ZU9mID0gU3RyaW5nLnByb3RvdHlwZS52YWx1ZU9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fdmFsdWVPZiAhPT0gImZ1bmN0aW9uIikgewogICRFUlJPUignIzE6IF9fdmFsdWVPZiA9IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZjsgdHlwZW9mIF9fdmFsdWVPZiA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX192YWx1ZU9mID09PScrdHlwZW9mIF9fdmFsdWVPZiApOyAKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCnRyeSB7CiAgdmFyIHggPSBfX3ZhbHVlT2YoKTsKICAkRkFJTCgnIzI6ICJfX3ZhbHVlT2YgPSBTdHJpbmcucHJvdG90eXBlLnZhbHVlT2Y7IHZhciB4ID0gX192YWx1ZU9mKCkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoIShlIGluc3RhbmNlb2YgVHlwZUVycm9yKSkgewogICAgJEVSUk9SKCcjMi4xOiBFeGNlcHRpb24gaXMgaW5zdGFuY2Ugb2YgVHlwZUVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.3_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTJfVDIiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIG9iamVjdCBTdHJpbmcucHJvdG90eXBlLnZhbHVlT2YgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaj17dmFsdWVPZiA6IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19vYmpbInZhbHVlT2YiXSAhPT0gImZ1bmN0aW9uIikgewogICRFUlJPUignIzE6IHZhciBfX29iaj17dmFsdWVPZiA6IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZn07IHR5cGVvZiBfX29ialsidmFsdWVPZiJdID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX29ialsidmFsdWVPZiJdID09PScrdHlwZW9mIF9fb2JqWyJ2YWx1ZU9mIl0gKTsgCn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp0cnkgewogIHZhciB4ID0gKF9fb2JqID09IDEpOwogICRGQUlMKCcjMjogInZhciBfX29iaj17dmFsdWVPZiA6IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZn07IHZhciB4ID0gKF9fb2JqID09IDEpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzIuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.3_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40X0ExIiwKCnBhdGg6ICIxNS41LjQiLAoKZGVzY3JpcHRpb246ICJmaXJzdCB3ZSBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZyBjYXVzZSBpdCBvdmVycmlkZXMgT2JqZWN0IHByb3RvdHlwZSB0b1N0cmluZy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZygpICE9PSAiW29iamVjdCAiKyJTdHJpbmciKyJdIikgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOyBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nKCkgPT09ICJbb2JqZWN0ICIrIlN0cmluZyIrIl0iLiBBY3R1YWw6IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSA9PT0nK1N0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40X0EyIiwKCnBhdGg6ICIxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlICE9IiIpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlID09IiIuIEFjdHVhbDogU3RyaW5nLnByb3RvdHlwZSA9PScrU3RyaW5nLnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40X0EzIiwKCnBhdGg6ICIxNS41LjQsIDE1LjIuMy4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKFN0cmluZy5wcm90b3R5cGUpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihTdHJpbmcucHJvdG90eXBlKSkpIHsKICAkRVJST1IoJyMxOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nLnByb3RvdHlwZSkgcmV0dXJuIHRydWUuIEFjdHVhbDogJytPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nLnByb3RvdHlwZSkpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZygpICE9ICJbb2JqZWN0ICIrIlN0cmluZyIrIl0iKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmc7IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSA9PSAiW29iamVjdCAiKyJTdHJpbmciKyJdIi4gQWN0dWFsOiBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nKCkgPT0nK1N0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExMCIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExMSIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUubWF0Y2gubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLm1hdGNoKHRydWUpWzBdICE9PSAidHJ1ZSIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7ICBfX2luc3RhbmNlLm1hdGNoKHRydWUpWzBdID09PSAidHJ1ZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLm1hdGNoKHRydWUpWzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBtYXRjaCAocmVnZXhwKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhcmd1bWVudCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19zdHIgPSAiQUJCXHUwMDQxQkFCQUIiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIGlmIChtYXRjaChfX29iailbMF0gIT09IkFCIikgewogICAgICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsgbWF0Y2goX19vYmopWzBdID09PSJBQiIuIEFjdHVhbDogJyttYXRjaChfX29iailbMF0gKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdGhpcyBvYmplY3QgYXMgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbnRvc3RyIjt9fQp2YXIgX19zdHIgPSB7c3RyX186IkFCQlx1MDA0MUJBQkFCIn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgd2l0aChzdHJfXyl7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHZhciB4ID0gbWF0Y2goX19vYmopOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBtYXRjaChfX29iaikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdGhpcyBvYmplY3QgYXMgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KdmFyIF9fc3RyID0gbmV3IFN0cmluZygiQUJCXHUwMDQxQkFCQUIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB0cnkgewogICAgICB2YXIgeCA9IG1hdGNoKF9fb2JqKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBtYXRjaChfX29iaikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgbWF0Y2ggKHJlZ2V4cCkgZnVuY3Rpb24gd2l0aCB0aGlzIG9iamVjdCBhcyBhcmd1bWVudCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQlx1MDAzMUFCQUJcdTAwMzFCQkFBIi5tYXRjaChfX29iailbMF0gIT09IjEiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyAiQUJCXFx1MDA0MUJcXHUwMDMxQUJBQlxcdTAwMzFCQkFBIi5tYXRjaChfX29iailbMF0gPT09IjEiLiBBY3R1YWw6ICcrKCJBQkJcdTAwNDFCXHUwMDMxQUJBQlx1MDAzMUJCQUEiLm1hdGNoKF9fb2JqKVswXSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKCJBQkJcdTAwNDFCXHUwMDMxQUJBQlx1MDAzMUJCQUEiLm1hdGNoKF9fb2JqKS5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMzOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07ICJBQkJcXHUwMDQxQlxcdTAwMzFBQkFCXFx1MDAzMUJCQUEiLm1hdGNoKF9fb2JqKS5sZW5ndGggPT09IDEuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJcdTAwMzFBQkFCXHUwMDMxQkJBQSIubWF0Y2goX19vYmopLmxlbmd0aCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBtYXRjaCAocmVnZXhwKSBmdW5jdGlvbiB3aXRoIFJlZ0V4cCBvYmplY3QgYXMgYXJndW1lbnQgZnJvbSBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIjc3Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5tYXRjaChfX3JlZylbMF0gIT09ICI3NyIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCI3NyIpOyAiQUJCXFx1MDA0MUJBQkFCXFx1MDAzN1xcdTAwMzdCQkFBIi5tYXRjaChfX3JlZylbMF0gPT09ICI3NyIuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJBQkFCXHUwMDM3XHUwMDM3QkJBQSIubWF0Y2goX19yZWcpWzBdKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFuLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLm1hdGNoID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UubWF0Y2goZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSgpKVswXSAhPT0gImZhbHNlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7ICBfX2luc3RhbmNlLm1hdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSlbMF0gPT09ICJmYWxzZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLm1hdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSlbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgbWF0Y2ggPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKG1hdGNoKGV2YWwoIlwiYmpcIiIpKVswXSAhPT0gImJqIikgewogICRFUlJPUignIzE6IG1hdGNoID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaDsgbWF0Y2goZXZhbCgiXFwiYmpcXCIiKSlbMF0gPT09ICJiaiIuIEFjdHVhbDogJyttYXRjaChldmFsKCJcImJqXCIiKSlbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGhvdXQgYXJndW1lbnRzIG9mIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbWF0Y2hlZCA9ICIiLm1hdGNoKCk7Cgp2YXIgX19leHBlY3RlZCA9IFJlZ0V4cCgpLmV4ZWMoIiIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19tYXRjaGVkID0gIiIubWF0Y2goKTsgX19leHBlY3RlZCA9IFJlZ0V4cCgpLmV4ZWMoIiIpOyBfX21hdGNoZWQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbWF0Y2hlZC5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbWF0Y2hlZCA9ICIiLm1hdGNoKCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoKS5leGVjKCIiKTsgX19tYXRjaGVkLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19tYXRjaGVkLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX21hdGNoZWQuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX21hdGNoZWQgPSAiIi5tYXRjaCgpOyBfX2V4cGVjdGVkID0gUmVnRXhwKCkuZXhlYygiIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fbWF0Y2hlZCA9ICIiLm1hdGNoKCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoKS5leGVjKCIiKTsgX19tYXRjaGVkWycraW5kZXgrJ109PT1fX2V4cGVjdGVkWycraW5kZXgrJ10uIEFjdHVhbDogJytfX21hdGNoZWRbaW5kZXhdKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggbnVsbCBhcmd1bWVudCBvZiBmdW5jdGlvbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIG1hdGNoKG51bGwpIGV2YWx1YXRlcyB0byBtYXRjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLm1hdGNoKG51bGwpWzBdICE9PSAibnVsbCIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLm1hdGNoKG51bGwpWzBdID09PSAibnVsbCIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLm1hdGNoKG51bGwpWzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggeCBhcmd1bWVudCBvZiBuZXcgU3RyaW5nIG9iamVjdCwgd2hlcmUgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh4KTsKCnZhciBfX2V4cGVjdGVkID0gUmVnRXhwKHgpLmV4ZWMoInVuZGVmaW5lZCIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19tYXRjaGVkID0gbmV3IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2goeCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoeCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19tYXRjaGVkLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19tYXRjaGVkLmluZGV4ICE9PSBfX2V4cGVjdGVkLmluZGV4KSB7CiAgJEVSUk9SKCcjMjogX19tYXRjaGVkID0gbmV3IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2goeCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoeCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19tYXRjaGVkLmlucHV0ICE9PSBfX2V4cGVjdGVkLmlucHV0KSB7CiAgJEVSUk9SKCcjMzogX19tYXRjaGVkID0gbmV3IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2goeCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoeCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fbWF0Y2hlZCA9IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLm1hdGNoKHgpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHgpLmV4ZWMoInVuZGVmaW5lZCIpOyBfX21hdGNoZWRbJytpbmRleCsnXT09PV9fZXhwZWN0ZWRbJytpbmRleCsnXS4gQWN0dWFsOiAnK19fbWF0Y2hlZFtpbmRleF0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdW5kZWZpbmVkIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZWQgPSBTdHJpbmcoInVuZGVmaW5lZCIpLm1hdGNoKHVuZGVmaW5lZCk7Cgp2YXIgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19tYXRjaGVkID0gU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh1bmRlZmluZWQpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19tYXRjaGVkLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19tYXRjaGVkLmluZGV4ICE9PSBfX2V4cGVjdGVkLmluZGV4KSB7CiAgJEVSUk9SKCcjMjogX19tYXRjaGVkID0gU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh1bmRlZmluZWQpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19tYXRjaGVkLmlucHV0ICE9PSBfX2V4cGVjdGVkLmlucHV0KSB7CiAgJEVSUk9SKCcjMzogX19tYXRjaGVkID0gU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh1bmRlZmluZWQpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fbWF0Y2hlZCA9IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2godW5kZWZpbmVkKTsgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyBfX21hdGNoZWRbJytpbmRleCsnXT09PV9fZXhwZWN0ZWRbJytpbmRleCsnXS4gQWN0dWFsOiAnK19fbWF0Y2hlZFtpbmRleF0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdm9pZCAwIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OwoKdmFyIF9fbWF0Y2hlZCA9IFN0cmluZyhfX29iaikubWF0Y2godm9pZCAwKTsKCnZhciBfX2V4cGVjdGVkID0gUmVnRXhwKHZvaWQgMCkuZXhlYygidW5kZWZpbmVkIik7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19tYXRjaGVkLmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBfX21hdGNoZWQgPSBTdHJpbmcoX19vYmopLm1hdGNoKHZvaWQgMCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodm9pZCAwKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX21hdGNoZWQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX21hdGNoZWQuaW5kZXggIT09IF9fZXhwZWN0ZWQuaW5kZXgpIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBfX21hdGNoZWQgPSBTdHJpbmcoX19vYmopLm1hdGNoKHZvaWQgMCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodm9pZCAwKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19tYXRjaGVkLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX21hdGNoZWQuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBfX21hdGNoZWQgPSBTdHJpbmcoX19vYmopLm1hdGNoKHZvaWQgMCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodm9pZCAwKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmlucHV0ID09PSBfX2V4cGVjdGVkLmlucHV0LiBBY3R1YWw6ICcrX19tYXRjaGVkLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19tYXRjaGVkW2luZGV4XSE9PV9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyM0LicraW5kZXgrJzogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19tYXRjaGVkID0gU3RyaW5nKF9fb2JqKS5tYXRjaCh2b2lkIDApOyBfX2V4cGVjdGVkID0gUmVnRXhwKHZvaWQgMCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZFsnK2luZGV4KyddPT09X19leHBlY3RlZFsnK2luZGV4KyddLiBBY3R1YWw6ICcrX19tYXRjaGVkW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb24oKXt9KCkgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKF9fb2JqKS5tYXRjaChmdW5jdGlvbigpe30oKSk7Cgp2YXIgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fbWF0Y2hlZCA9IG5ldyBTdHJpbmcoX19vYmopLm1hdGNoKGZ1bmN0aW9uKCl7fSgpKTsgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyBfX21hdGNoZWQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbWF0Y2hlZC5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKF9fb2JqKS5tYXRjaChmdW5jdGlvbigpe30oKSk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodW5kZWZpbmVkKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19tYXRjaGVkLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX21hdGNoZWQuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19tYXRjaGVkID0gbmV3IFN0cmluZyhfX29iaikubWF0Y2goZnVuY3Rpb24oKXt9KCkpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKF9fb2JqKS5tYXRjaChmdW5jdGlvbigpe30oKSk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodW5kZWZpbmVkKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkWycraW5kZXgrJ109PT1fX2V4cGVjdGVkWycraW5kZXgrJ10uIEFjdHVhbDogJytfX21hdGNoZWRbaW5kZXhdKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiMTIzNDU2Nzg5MCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgzKVswXSE9PSAiMyIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTY3ODkwIjsgX19zdHJpbmcubWF0Y2goMylbMF09PT0gIjMiLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goMylbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHJpbmcubWF0Y2goMykubGVuZ3RoICE9PTEpIHsKICAkRVJST1IoJyMyOiBfX3N0cmluZyA9ICIxMjM0NTY3ODkwIjsgX19zdHJpbmcubWF0Y2goMykubGVuZ3RoID09PTEuIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaCgzKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3RyaW5nLm1hdGNoKDMpLmluZGV4ICE9PTIpIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZyA9ICIxMjM0NTY3ODkwIjsgX19zdHJpbmcubWF0Y2goMykuaW5kZXggPT09Mi4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKDMpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0cmluZy5tYXRjaCgzKS5pbnB1dCAhPT1fX3N0cmluZykgewogICRFUlJPUignIzQ6IF9fc3RyaW5nID0gIjEyMzQ1Njc4OTAiOyBfX3N0cmluZy5tYXRjaCgzKS5pbnB1dCA9PT1fX3N0cmluZy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKDMpLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4gTGFzdCBtYXRjaCBpcyB1bmRlZmluZWQuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7Cgp2YXIgX19tYXRjaGVzPVsiMDIxMzQiLCAiMDIxMzQiLCB1bmRlZmluZWRdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOwoKX19yZS5sYXN0SW5kZXggPSBfX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoIT09IDMpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gMy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCAhPT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcubWF0Y2goX19yZSkuaW5kZXggPT09X19zdHJpbmcubGFzdEluZGV4T2YoIjAiKS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaChfX3JlKVttaV0hPT1fX21hdGNoZXNbbWldKSB7CiAgICAkRVJST1IoJyMzLicrbWkrJzogX19zdHJpbmcubWF0Y2goX19yZSlbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSlbbWldKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4gTGFzdCBtYXRjaCBpcyB1bmRlZmluZWQuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7Cgp2YXIgX19tYXRjaGVzPVsiMDIxMzQiLCAiMDIxMzQiLCB1bmRlZmluZWRdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOwoKX19yZS5sYXN0SW5kZXggPSBfX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKzE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGghPT0gMykgewogICRFUlJPUignIzE6IF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aD09PSAzLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ICE9PV9fc3RyaW5nLmxhc3RJbmRleE9mKCIwIikpIHsKICAkRVJST1IoJyMyOiBfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCA9PT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSkuaW5kZXggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBtaT0wOyBtaTxfX21hdGNoZXMubGVuZ3RoOyBtaSsrKSB7CiAgaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpW21pXSE9PV9fbWF0Y2hlc1ttaV0pIHsKICAgICRFUlJPUignIzMuJyttaSsnOiBfX3N0cmluZy5tYXRjaChfX3JlKVsnK21pKyddPT09X19tYXRjaGVzWycrbWkrJ10uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKVttaV0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgdmFyaWFibGUgdGhhdCBoYXZlIHZhbHVlIC8oW1xcZF17NX0pKFstXFwgXT9bXFxkXXs0fSk/JC9nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19tYXRjaGVzPVsiMDIxMzQiXTsKCnZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2c7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGghPT0gX19tYXRjaGVzLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aD09PSBfX21hdGNoZXMubGVuZ3RoLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpWzBdIT09X19tYXRjaGVzWzBdKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcubWF0Y2goX19yZSlbMF09PT1fX21hdGNoZXNbMF0uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKVswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19tYXRjaGVzPVsiMDIxMzQiXTsKCnZhciBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2c7Cl9fcmUubGFzdEluZGV4ID0gMDsKCnZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSBfX21hdGNoZXMubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoPT09IF9fbWF0Y2hlcy5sZW5ndGguIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goX19yZSlbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZy5tYXRjaChfX3JlKVswXT09PV9fbWF0Y2hlc1swXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7Cgp2YXIgX19tYXRjaGVzPVsiMDIxMzQiXTsKCnZhciBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2c7CgpfX3JlLmxhc3RJbmRleCA9IF9fc3RyaW5nLmxlbmd0aDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSBfX21hdGNoZXMubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoPT09IF9fbWF0Y2hlcy5sZW5ndGguIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goX19yZSlbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZy5tYXRjaChfX3JlKVswXT09PV9fbWF0Y2hlc1swXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNSIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX21hdGNoZXM9WyIwMjEzNCJdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZzsKCl9fcmUubGFzdEluZGV4ID0gX19zdHJpbmcubGFzdEluZGV4T2YoIjAiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSBfX21hdGNoZXMubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoPT09IF9fbWF0Y2hlcy5sZW5ndGguIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goX19yZSlbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZy5tYXRjaChfX3JlKVswXT09PV9fbWF0Y2hlc1swXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNiIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX21hdGNoZXM9WyIwMjEzNCJdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZzsKCl9fcmUubGFzdEluZGV4ID0gX19zdHJpbmcubGFzdEluZGV4T2YoIjAiKSsxOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoIT09IF9fbWF0Y2hlcy5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gX19tYXRjaGVzLmxlbmd0aC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKVswXSE9PV9fbWF0Y2hlc1swXSkgewogICRFUlJPUignIzM6IF9fc3RyaW5nLm1hdGNoKF9fcmUpWzBdPT09X19tYXRjaGVzWzBdLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSlbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNyIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLzAuLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fcmUgPSAvMC4vOwoKdmFyIF9fbnVtID0gMTAyMDMwNDA1MDYwNzA4MDkwMDA7CgpOdW1iZXIucHJvdG90eXBlLm1hdGNoID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaDsKCi8vX19tYXRjaGVzID0gWyIwMiJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19udW0ubWF0Y2goX19yZSlbMF0hPT0gIjAyIikgewogICRFUlJPUignIzE6IF9fbnVtLm1hdGNoKF9fcmUpWzBdPT09ICIwMiIuIEFjdHVhbDogJytfX251bS5tYXRjaChfX3JlKVswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX251bS5tYXRjaChfX3JlKS5sZW5ndGggIT09MSkgewogICRFUlJPUignIzI6IF9fbnVtLm1hdGNoKF9fcmUpLmxlbmd0aCA9PT0xLiBBY3R1YWw6ICcrX19udW0ubWF0Y2goX19yZSkubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX251bS5tYXRjaChfX3JlKS5pbmRleCAhPT0xKSB7CiAgJEVSUk9SKCcjMzogX19udW0ubWF0Y2goX19yZSkuaW5kZXggPT09MS4gQWN0dWFsOiAnK19fbnVtLm1hdGNoKF9fcmUpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX251bS5tYXRjaChfX3JlKS5pbnB1dCAhPT1TdHJpbmcoX19udW0pKSB7CiAgJEVSUk9SKCcjNDogX19udW0ubWF0Y2goX19yZSkuaW5wdXQgPT09U3RyaW5nKF9fbnVtKS4gQWN0dWFsOiAnK19fbnVtLm1hdGNoKF9fcmUpLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxOCIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLzAuLy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlID0gLzAuLzsKCl9fcmUubGFzdEluZGV4ID0gMDsKCnZhciBfX251bSA9IDEwMjAzMDQwNTA2MDcwODA5MDAwOwoKTnVtYmVyLnByb3RvdHlwZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX251bS5tYXRjaChfX3JlKVswXSE9PSAiMDIiKSB7CiAgJEVSUk9SKCcjMTogX19udW0ubWF0Y2goX19yZSlbMF09PT0gIjAyIi4gQWN0dWFsOiAnK19fbnVtLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbnVtLm1hdGNoKF9fcmUpLmxlbmd0aCAhPT0xKSB7CiAgJEVSUk9SKCcjMjogX19udW0ubWF0Y2goX19yZSkubGVuZ3RoID09PTEuIEFjdHVhbDogJytfX251bS5tYXRjaChfX3JlKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fbnVtLm1hdGNoKF9fcmUpLmluZGV4ICE9PTEpIHsKICAkRVJST1IoJyMzOiBfX251bS5tYXRjaChfX3JlKS5pbmRleCA9PT0xLiBBY3R1YWw6ICcrX19udW0ubWF0Y2goX19yZSkuaW5kZXggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fbnVtLm1hdGNoKF9fcmUpLmlucHV0ICE9PVN0cmluZyhfX251bSkpIHsKICAkRVJST1IoJyM0OiBfX251bS5tYXRjaChfX3JlKS5pbnB1dCA9PT1TdHJpbmcoX19udW0pLiBBY3R1YWw6ICcrX19udW0ubWF0Y2goX19yZSkuaW5wdXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvMzQvZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbWF0Y2hlcz1bIjM0IiwiMzQiLCIzNCJdOwoKdmFyIF9fc3RyaW5nID0gIjM0MzQ0MzQ0NCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvMzQvZykubGVuZ3RoIT09IDMpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIzNDM0NDM0NDQiOyBfX3N0cmluZy5tYXRjaCgvMzQvZykubGVuZ3RoPT09IDMuIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaCgvMzQvZykubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKZm9yKHZhciBtaT0wOyBtaTxfX21hdGNoZXMubGVuZ3RoOyBtaSsrKSB7CiAgaWYgKF9fc3RyaW5nLm1hdGNoKC8zNC9nKVttaV0hPT1fX21hdGNoZXNbbWldKSB7CiAgICAkRVJST1IoJyMyLicrbWkrJzogX19tYXRjaGVzPVsiMzQiLCIzNCIsIjM0Il07IF9fc3RyaW5nID0gIjM0MzQ0MzQ0NCI7IF9fc3RyaW5nLm1hdGNoKC8zNC9nKVsnK21pKyddPT09X19tYXRjaGVzWycrbWkrJ10uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaCgvMzQvZylbbWldKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvXFxkezF9L2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyIxIiwgIjIiLCAiMyIsICI0IiwgIjUiLCAiNiIsICI3IiwgIjgiLCAiOSIsICIwIl07Cgp2YXIgX19zdHJpbmcgPSAiMTIzNDU2YWJjZGU3ODkwIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKC9cZHsxfS9nKS5sZW5ndGghPT0gMTApIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTZhYmNkZTc4OTAiOyBfX3N0cmluZy5tYXRjaCgvXFxkezF9L2cpLmxlbmd0aD09PSAxMC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC9cZHsxfS9nKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgpmb3IodmFyIG1pPTA7IG1pPF9fbWF0Y2hlcy5sZW5ndGg7IG1pKyspIHsKICBpZiAoX19zdHJpbmcubWF0Y2goL1xkezF9L2cpW21pXSE9PV9fbWF0Y2hlc1ttaV0pIHsKICAgICRFUlJPUignIzIuJyttaSsnOiBfX21hdGNoZXM9WyIxIiwgIjIiLCAiMyIsICI0IiwgIjUiLCAiNiIsICI3IiwgIjgiLCAiOSIsICIwIl07IF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7IF9fc3RyaW5nLm1hdGNoKC9cXGR7MX0vZylbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xkezF9L2cpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvXFxkezJ9L2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyIxMiIsICIzNCIsICI1NiIsICI3OCIsICI5MCJdOwoKdmFyIF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvXGR7Mn0vZykubGVuZ3RoIT09IDUpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTZhYmNkZTc4OTAiOyBfX3N0cmluZy5tYXRjaCgvXFxkezJ9L2cpLmxlbmd0aD09PSA1LiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xkezJ9L2cpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaCgvXGR7Mn0vZylbbWldIT09X19tYXRjaGVzW21pXSkgewogICAgJEVSUk9SKCcjMi4nK21pKyc6IF9fbWF0Y2hlcz1bIjEyIiwgIjM0IiwgIjU2IiwgIjc4IiwgIjkwIl07IF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7IF9fc3RyaW5nLm1hdGNoKC9cXGR7Mn0vZylbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xkezJ9L2cpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvXFxEezJ9L2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyJhYiIsICJjZCJdOwoKdmFyIF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvXER7Mn0vZykubGVuZ3RoIT09IDIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTZhYmNkZTc4OTAiOyBfX3N0cmluZy5tYXRjaCgvXFxEezJ9L2cpLmxlbmd0aD09PSAyLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xEezJ9L2cpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaCgvXER7Mn0vZylbbWldIT09X19tYXRjaGVzW21pXSkgewogICAgJEVSUk9SKCcjMi4nK21pKyc6IF9fbWF0Y2hlcz1bImFiIiwgImNkIl07IF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7IF9fc3RyaW5nLm1hdGNoKC9cXER7Mn0vZylbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xEezJ9L2cpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvLiBMYXN0IG1hdGNoIGlzIHZvaWQgMCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMF0hPT0gIjAyMTM0IikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKVswXT09PSAiMDIxMzQiLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMV0hPT0gIjAyMTM0IikgewogICRFUlJPUignIzI6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKVsxXT09PSAiMDIxMzQiLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMl0hPT0gdm9pZCAwKSB7CiAgJEVSUk9SKCcjMzogX19zdHJpbmcgPSAiQm9zdG9uLCBNYXNzLiAwMjEzNCI7IF9fc3RyaW5nLm1hdGNoKC8oW1xcZF17NX0pKFstXFwgXT9bXFxkXXs0fSk/JC8pWzJdPT09IHZvaWQgMC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pWzJdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pLmxlbmd0aCAhPT0zKSB7CiAgJEVSUk9SKCcjNDogX19zdHJpbmcgPSAiQm9zdG9uLCBNYXNzLiAwMjEzNCI7IF9fc3RyaW5nLm1hdGNoKC8oW1xcZF17NX0pKFstXFwgXT9bXFxkXXs0fSk/JC8pLmxlbmd0aCA9PT0zLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLykubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvKS5pbmRleCAhPT0xNCkgewogICRFUlJPUignIzU6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKS5pbmRleCA9PT0xNC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvKS5pbnB1dCAhPT1fX3N0cmluZykgewogICRFUlJPUignIzY6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKS5pbnB1dCA9PT1fX3N0cmluZy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbWF0Y2hlcz1bIjAyMTM0Il07Cgp2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNYXNzLiAwMjEzNCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZykubGVuZ3RoIT09IDEpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICJCb3N0b24sIE1hc3MuIDAyMTM0IjsgX19zdHJpbmcubWF0Y2goLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cpLmxlbmd0aD09PSAxLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2cpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZylbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMyOiBfX21hdGNoZXM9WyIwMjEzNCJdOyBfX3N0cmluZyA9ICJCb3N0b24sIE1hc3MuIDAyMTM0IjsgX19zdHJpbmcubWF0Y2goLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cpWzBdPT09X19tYXRjaGVzWzBdLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2cpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvLiBMYXN0IG1hdGNoIGlzIHVuZGVmaW5lZC4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyIwMjEzNCIsICIwMjEzNCIsIHVuZGVmaW5lZF07Cgp2YXIgX19yZSA9IC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC87Cl9fcmUubGFzdEluZGV4ID0gMDsKCnZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSAzKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gMy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCAhPT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3JlLmxhc3RJbmRleCA9IDA7IF9fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ID09PV9fc3RyaW5nLmxhc3RJbmRleE9mKCIwIikuIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIG1pPTA7IG1pPF9fbWF0Y2hlcy5sZW5ndGg7IG1pKyspIHsKICBpZiAoX19zdHJpbmcubWF0Y2goX19yZSlbbWldIT09X19tYXRjaGVzW21pXSkgewogICAgJEVSUk9SKCcjMy4nK21pKyc6IF9fc3RyaW5nID0gIkJvc3RvbiwgTUEgMDIxMzQiOyBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLzsgX19tYXRjaGVzPVsiMDIxMzQiLCAiMDIxMzQiLCB1bmRlZmluZWRdOyBfX3N0cmluZy5tYXRjaChfX3JlKVsnK21pKyddPT09X19tYXRjaGVzWycrbWkrJ10uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKVttaV0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvLiBMYXN0IG1hdGNoIGlzIHVuZGVmaW5lZC4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX21hdGNoZXM9WyIwMjEzNCIsICIwMjEzNCIsIHVuZGVmaW5lZF07Cgp2YXIgX19yZSA9IC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC87CgpfX3JlLmxhc3RJbmRleCA9IF9fc3RyaW5nLmxlbmd0aDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSAzKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gMy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCAhPT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3JlLmxhc3RJbmRleCA9IF9fc3RyaW5nLmxlbmd0aDsgX19zdHJpbmcubWF0Y2goX19yZSkuaW5kZXggPT09X19zdHJpbmcubGFzdEluZGV4T2YoIjAiKS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaChfX3JlKVttaV0hPT1fX21hdGNoZXNbbWldKSB7CiAgICAkRVJST1IoJyMzLicrbWkrJzogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX21hdGNoZXM9WyIwMjEzNCIsICIwMjEzNCIsIHVuZGVmaW5lZF07IF9fc3RyaW5nLm1hdGNoKF9fcmUpWycrbWkrJ109PT1fX21hdGNoZXNbJyttaSsnXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E2IiwKCnBhdGg6ICIxNS41LjQuMTAsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLm1hdGNoLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubWF0Y2gucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLm1hdGNoLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E3IiwKCnBhdGg6ICIxNS41LjQuMTAsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyBcIlN0cmluZy5wcm90b3R5cGUubWF0Y2ggb2JqZWN0XCIgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOyBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOyBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQoKIH0KfSk7Cgo=","id":"S15.5.4.10_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E4IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLm1hdGNoLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubWF0Y2gucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLm1hdGNoKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5tYXRjaCl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E5IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubWF0Y2gubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubWF0Y2gubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubWF0Y2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExMCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMTogU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoOwoKU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCAhPT0gX19vYmopIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCA9PT0gX19vYmouIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExMSIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHRydWUgYW5kIDEsIGFuZCBpbnN0YW5jZSBpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsKCl9faW5zdGFuY2UucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UucmVwbGFjZSh0cnVlLCAxKSAhPT0gIjEiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7IF9faW5zdGFuY2UucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsgIF9faW5zdGFuY2UucmVwbGFjZSh0cnVlLCAxKSA9PT0gIjEiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5yZXBsYWNlKHRydWUsIDEpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhbmQgZnVuY3Rpb24gYXJndW1lbnRzIG9mIHN0cmluZy4gT2JqZWN0IGhhdmUgb3ZlcnJpZGVkIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OwoKdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAocmVwbGFjZShfX29iaiwgZnVuY3Rpb24oKXtyZXR1cm4geDt9KSAhPT0gInVuZGVmaW5lZEJBQkFCQUIiKSB7CiAgICAgICRFUlJPUignIzE6IHZhciB4OyB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OyB2YXIgX19zdHIgPSAiQUJCXHUwMDQxQkFCQUIiOyByZXBsYWNlKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiB4O30pID09PSAidW5kZWZpbmVkQkFCQUJBQiIuIEFjdHVhbDogJytyZXBsYWNlKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiB4O30pICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdHMgYXJndW1lbnRzIG9mIHN0cmluZyBvYmplY3QuIE9iamVjdHMgaGF2ZSBvdmVycmlkZWQgdG9TdHJpbmcgZnVuY3Rpb24sIHRoYXQgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zZWFyY2hWYWx1ZSI7fX07CnZhciBfX29iajIgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5yZXBsYWNlVmFsdWUiO319Owp2YXIgX19zdHIgPSB7c3RyX186IkFCQlx1MDA0MUJBQkFCIn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgd2l0aChzdHJfXyl7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHZhciB4ID0gcmVwbGFjZShfX29iaixfX29iajIpOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSByZXBsYWNlKF9fb2JqLF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW5zZWFyY2hWYWx1ZSIpIHsKICAgICAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnNlYXJjaFZhbHVlIi4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdHMgYXJndW1lbnRzIG9mIFN0cmluZyBvYmplY3QuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnNlYXJjaFZhbHVlIjt9fTsKdmFyIF9fb2JqMiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbnJlcGxhY2VWYWx1ZSI7fX07CnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoIkFCQlx1MDA0MUJBQkFCIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSByZXBsYWNlKF9fb2JqLCBfX29iajIpOwogICAgICAkRkFJTCgnIzE6ICJ2YXIgeCA9IHJlcGxhY2UoX19vYmosX19vYmoyKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgaWYgKGUhPT0iaW5zZWFyY2hWYWx1ZSIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImluc2VhcmNoVmFsdWUiLiBBY3R1YWw6ICcrZSk7CiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdHMgYXJndW1lbnRzIG9mIHN0cmluZy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LCB2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07CnZhciBfX29iajIgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5yZXBsYWNlVmFsdWUiO319OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogICAgdmFyIHggPSAiQUJCXHUwMDQxQkFCQUJcdTAwMzFCQkFBIi5yZXBsYWNlKF9fb2JqLCBfX29iajIpOwogICAgJEZBSUwoJyMxOiB2YXIgeCA9ICJBQkJcXHUwMDQxQkFCQUJcXHUwMDMxQkJBQSIucmVwbGFjZShfX29iaixfX29iajIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICAgIGlmIChlIT09ImlucmVwbGFjZVZhbHVlIikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5yZXBsYWNlVmFsdWUiLiBBY3R1YWw6ICcrZSk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgc3RyaW5nLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIjc3Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5yZXBsYWNlKF9fcmVnLCAxKSAhPT0gIkFCQkFCQUJBQlx1MDAzMUJCQUEiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fcmVnID0gbmV3IFJlZ0V4cCgiNzciKTsgIkFCQlxcdTAwNDFCQUJBQlxcdTAwMzdcXHUwMDM3QkJBQSIucmVwbGFjZShfX3JlZywgMSkgPT09ICJBQkJBQkFCQUJcXHUwMDMxQkJBQSIuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJBQkFCXHUwMDM3XHUwMDM3QkJBQSIucmVwbGFjZShfX3JlZywgMSkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgT2JqZWN0LCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAvNzcvfX07Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoMTEwMC4wMDc3NzAwMSk7CgpPYmplY3QucHJvdG90eXBlLnJlcGxhY2UgPSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX2luc3RhbmNlLnJlcGxhY2UoX19vYmosIDEpID09PSAiMTEwMC4wMDE3MDAxIjsKICAgICRGQUlMKCcjMS4wOiB4ID0gX19pbnN0YW5jZS5yZXBsYWNlKF9fb2JqLCAxKSA9PT0gIjExMDAuMDAxNzAwMSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiBpcyBpbnN0YW5jZSBvZiBUeXBlRXJyb3IuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNiIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgTnVtYmVyLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlID0gLzc3LzsKCnZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMTAwLjAwNzc3MDAxKTsKCk51bWJlci5wcm90b3R5cGUucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsKCnZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihhMSxhMixhMyl7cmV0dXJuIGEyKyJ6In07fX0KLy9fX29iaiA9IGZ1bmN0aW9uKGExLGEyLGEzKXtyZXR1cm4gYTIrInoifTsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX2luc3RhbmNlLnJlcGxhY2UoX19yZSwgX19vYmopID09PSAiMTEwMC4wMDd6NzAwMSI7CiAgJEZBSUwoJyMxLjA6IHggPSBfX2luc3RhbmNlLnJlcGxhY2UoX19vYmosIDEpID09PSAiMTEwMC4wMDd6NzAwMSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiBpcyBpbnN0YW5jZSBvZiBUeXBlRXJyb3IuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNyIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgU3RyaW5nIG9iamVjdCwgc2VhcmNoVmFsdWUgaXMgcmVndWxhciBleHByZXNzaW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZSA9IG5ldyBSZWdFeHAoeCwiZyIpOwoKdmFyIF9faW5zdGFuY2UgPSBTdHJpbmcoImFzZGYiKTsKCnZhciBfX3N0ciA9ICIxIjsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5yZXBsYWNlKF9fcmUsIF9fc3RyKSAhPT0gIjFhMXMxZDFmMSIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fcmUgPSBuZXcgUmVnRXhwKHgsImciKTsgX19pbnN0YW5jZSA9IFN0cmluZygiYXNkZiIpOyBfX3N0ciA9ICIxIjsgX19pbnN0YW5jZS5yZXBsYWNlKF9fcmUsIF9fc3RyKSA9PT0gIjFhMXMxZDFmMSIuIEFjdHVhbDogJytfX2luc3RhbmNlLnJlcGxhY2UoX19yZSwgX19zdHIpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFuLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLnJlcGxhY2UgPSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnJlcGxhY2UoZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSgpLHgpICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IHZhciB4OyBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsgIF9faW5zdGFuY2UucmVwbGFjZShmdW5jdGlvbigpe3JldHVybiBmYWxzZTt9KCkseCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5yZXBsYWNlKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSx4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICByZXBsYWNlID0gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlOwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9CgpfX2NsYXNzX18gPSB0b1N0cmluZygpOwpfX3RvZ2dsZSA9IDE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCl9fcmVwbGFjZWQgPSByZXBsYWNlKGV2YWwoIlwiYlwiIiksIl4iKTsKCl9fZ29sZGVuID0gIiI7CmZvcih2YXIgaT0wOyBpPF9fY2xhc3NfXy5sZW5ndGg7IGkrKykgewogIGlmICgoX19jbGFzc19fLmNoYXJBdChpKT09PSJiIikmJihfX3RvZ2dsZSkpIHsKICAgIF9fZ29sZGVuKz0iXiI7CiAgICBfX3RvZ2dsZSA9IDA7CiAgfSBlbHNlIHsKICAgIF9fZ29sZGVuKz1fX2NsYXNzX18uY2hhckF0KGkpOwogIH0KCn0KaWYgKF9fcmVwbGFjZWQgIT09X19nb2xkZW4pIHsKICAkRVJST1IoJyMxOiBfX3JlcGxhY2VkID09PV9fZ29sZGVuLiBBY3R1YWw6ICcrX19yZXBsYWNlZCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggbnVsbCBhbmQgZnVuY3Rpb24oYTEsYTIsYTMpe3JldHVybiBhMitcIlwiO30gYXJndW1lbnRzIG9mIGZ1bmN0aW9uIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5yZXBsYWNlKG51bGwsZnVuY3Rpb24oYTEsYTIsYTMpe3JldHVybiBhMisiIjt9KSAhPT0gImcxdW5hIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkucmVwbGFjZShudWxsLGZ1bmN0aW9uKGExLGEyLGEzKXtyZXR1cm4gYTIrIiI7fSkgPT09ICJnMXVuYSIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnJlcGxhY2UobnVsbCxmdW5jdGlvbihhMSxhMixhMyl7cmV0dXJuIGEyKyIiO30pICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggbnVsbCBhbmQgRnVuY3Rpb24oKSBhcmd1bWVudHMgb2YgZnVuY3Rpb24gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnJlcGxhY2UobnVsbCwgRnVuY3Rpb24oKSkgIT09ICJndW5kZWZpbmVkdW5hIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkucmVwbGFjZShudWxsLCBGdW5jdGlvbigpKSA9PT0gImd1bmRlZmluZWR1bmEiLiBBY3R1YWw6ICcrZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5yZXBsYWNlKG51bGwsIEZ1bmN0aW9uKCkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggeCBhbmQgRnVuY3Rpb24oXCJyZXR1cm4gYXJndW1lbnRzWzFdKzQyO1wiKSBhcmd1bWVudHMgb2YgbmV3IFN0cmluZyBvYmplY3QuIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5yZXBsYWNlKHgsRnVuY3Rpb24oInJldHVybiBhcmd1bWVudHNbMV0rNDI7IikpICE9PSAiNDIiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLnJlcGxhY2UoeCxGdW5jdGlvbigicmV0dXJuIGFyZ3VtZW50c1sxXSs0MjsiKSkgPT09ICI0MiIuIEFjdHVhbDogJytuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5yZXBsYWNlKHgsRnVuY3Rpb24oInJldHVybiBhcmd1bWVudHNbMV0rNDI7IikpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggc3RyaW5nIGFuZCB1bmRlZmluZWQgYXJndW1lbnRzIG9mIFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZyh2b2lkIDApLnJlcGxhY2UoImUiLHVuZGVmaW5lZCkgIT09ICJ1bmR1bmRlZmluZWRmaW5lZCIpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcodm9pZCAwKS5yZXBsYWNlKCJlIix1bmRlZmluZWQpID09PSAidW5kdW5kZWZpbmVkZmluZWQiLiBBY3R1YWw6ICcrU3RyaW5nKHZvaWQgMCkucmVwbGFjZSgiZSIsdW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggcmVndWxhciBleHByZXNzaW9uIGFuZCB2b2lkIDAgYXJndW1lbnRzIG9mIFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nKF9fb2JqKS5yZXBsYWNlKC9lL2csdm9pZCAwKSAhPT0gInVuZHVuZGVmaW5lZGZpbnVuZGVmaW5lZGQiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgU3RyaW5nKF9fb2JqKS5yZXBsYWNlKC9lL2csdm9pZCAwKSA9PT0gInVuZHVuZGVmaW5lZGZpbnVuZGVmaW5lZGQiLiBBY3R1YWw6ICcrU3RyaW5nKF9fb2JqKS5yZXBsYWNlKC9lL2csdm9pZCAwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb25zIGFyZ3VtZW50cyBvZiBuZXcgU3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKG5ldyBTdHJpbmcoX19vYmopLnJlcGxhY2UoZnVuY3Rpb24oKXt9KCksX19mdW5jKSAhPT0gInVuZGVmaW5lZDB1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IGZ1bmN0aW9uIF9fZnVuYyhhMSxhMixhMyl7cmV0dXJuIGExK2EyK2EzO307IG5ldyBTdHJpbmcoX19vYmopLnJlcGxhY2UoZnVuY3Rpb24oKXt9KCksX19mdW5jKSA9PT0gInVuZGVmaW5lZDB1bmRlZmluZWQiLiBBY3R1YWw6ICcrbmV3IFN0cmluZyhfX29iaikucmVwbGFjZShmdW5jdGlvbigpe30oKSxfX2Z1bmMpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmMoYTEsYTIsYTMpe3JldHVybiBhMSthMithMzt9OwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJEb25gdCB1c2UgJCBpbiByZXBsYWNlVmFsdWUsIHNlYXJjaFZhbHVlIGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiAvc2gvZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoL2c7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ci5yZXBsYWNlKF9fcmUsJ3NjaCcpIT09J1NoZSBzZWxscyBzZWFzY2hlbGxzIGJ5IHRoZSBzZWFzY2hvcmUuJykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuXCc7IHZhciBfX3JlID0gL3NoL2c7IF9fc3RyLnJlcGxhY2UoX19yZSxcJ3NjaFwnKT09PVwnU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNjaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiVXNlICRcJyBpbiByZXBsYWNlVmFsdWUsIHNlYXJjaFZhbHVlIGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiAvc2gvIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuJzsKdmFyIF9fcmUgPSAvc2gvOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAiJCciICsgJ3NjaCcpIT09J1NoZSBzZWxscyBzZWFlbGxzIGJ5IHRoZSBzZWFzaG9yZS5zY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gXCdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJzsgdmFyIF9fcmUgPSAvc2gvOyBfX3N0ci5yZXBsYWNlKF9fcmUsICIkXCciICsgXCdzY2hcJyk9PT1cJ1NoZSBzZWxscyBzZWFlbGxzIGJ5IHRoZSBzZWFzaG9yZS5zY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgIiQnIiArICdzY2gnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCQgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoL2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nOwp2YXIgX19yZSA9IC9zaC9nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCIkJCIgKyAnc2NoJykhPT0nU2hlIHNlbGxzIHNlYSRzY2hlbGxzIGJ5IHRoZSBzZWEkc2Nob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC9nOyBfX3N0ci5yZXBsYWNlKF9fcmUsIiQkIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhJHNjaGVsbHMgYnkgdGhlIHNlYSRzY2hvcmUuXCcuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsIiQkIiArICdzY2gnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCYgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoL2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nOwp2YXIgX19yZSA9IC9zaC9nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCIkJiIgKyAnc2NoJykhPT0nU2hlIHNlbGxzIHNlYXNoc2NoZWxscyBieSB0aGUgc2Vhc2hzY2hvcmUuJykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuXCc7IHZhciBfX3JlID0gL3NoL2c7IF9fc3RyLnJlcGxhY2UoX19yZSwiJCYiICsgXCdzY2hcJyk9PT1cJ1NoZSBzZWxscyBzZWFzaHNjaGVsbHMgYnkgdGhlIHNlYXNoc2Nob3JlLlwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCIkJiIgKyAnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJGAgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoL2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nOwp2YXIgX19yZSA9IC9zaC9nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAiJGAiICsgJ3NjaCcpIT09J1NoZSBzZWxscyBzZWFTaGUgc2VsbHMgc2Vhc2NoZWxscyBieSB0aGUgc2VhU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2Nob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC9nOyBfX3N0ci5yZXBsYWNlKF9fcmUsICIkYCIgKyBcJ3NjaFwnKT09PVwnU2hlIHNlbGxzIHNlYVNoZSBzZWxscyBzZWFzY2hlbGxzIGJ5IHRoZSBzZWFTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzY2hvcmUuXCcuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsICIkYCIgKyAnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJFwnIGluIHJlcGxhY2VWYWx1ZSwgc2VhcmNoVmFsdWUgaXMgcmVndWxhciBleHByZXNzaW9uIC9zaC9nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuJzsKdmFyIF9fcmUgPSAvc2gvZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQnIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2VhZWxscyBieSB0aGUgc2Vhc2hvcmUuc2NoZWxscyBieSB0aGUgc2Vhb3JlLnNjaG9yZS4nKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gXCdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJzsgdmFyIF9fcmUgPSAvc2gvZzsgX19zdHIucmVwbGFjZShfX3JlLCAiJFwnIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhZWxscyBieSB0aGUgc2Vhc2hvcmUuc2NoZWxscyBieSB0aGUgc2Vhb3JlLnNjaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgIiQnIiArICdzY2gnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJEb25gdCB1c2UgJCBpbiByZXBsYWNlVmFsdWUsIHNlYXJjaFZhbHVlIGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiAvc2gvIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuJzsKdmFyIF9fcmUgPSAvc2gvOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAnc2NoJykhPT0nU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC87IF9fc3RyLnJlcGxhY2UoX19yZSwgXCdzY2hcJyk9PT1cJ1NoZSBzZWxscyBzZWFzY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgJ3NjaCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCQgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQkIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2VhJHNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC87IF9fc3RyLnJlcGxhY2UoX19yZSwgIiQkIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhJHNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCAiJCQiICsgJ3NjaCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCYgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQmIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2Vhc2hzY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gXCdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJzsgdmFyIF9fcmUgPSAvc2gvOyBfX3N0ci5yZXBsYWNlKF9fcmUsICIkJiIgKyBcJ3NjaFwnKT09PVwnU2hlIHNlbGxzIHNlYXNoc2NoZWxscyBieSB0aGUgc2Vhc2hvcmUuXCcuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsICIkJiIgKyAnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJGAgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiRgIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2VhU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC87IF9fc3RyLnJlcGxhY2UoX19yZSwgIiRgIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCAiJGAiICsgJ3NjaCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJyZXBsYWNlVmFsdWUgaXMgXCIkMTFcIiArIDE1IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAndWlkPTMxJzsKdmFyIF9fcmUgPSAvKHVpZD0pKFxkKykvOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIDE1KSE9PSd1aWQ9MTE1JykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwndWlkPTMxXCc7IHZhciBfX3JlID0gLyh1aWQ9KShcZCspLzsgX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIDE1KT09PVwndWlkPTExNVwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIDE1KSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJyZXBsYWNlVmFsdWUgaXMgXCIkMTFcIiArIFwnMTVcJyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ3VpZD0zMSc7CnZhciBfX3JlID0gLyh1aWQ9KShcZCspLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQxMSIgKyAnMTUnKSE9PSd1aWQ9MTE1JykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwndWlkPTMxXCc7IHZhciBfX3JlID0gLyh1aWQ9KShcZCspLzsgX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIFwnMTVcJyk9PT1cJ3VpZD0xMTVcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgIiQxMSIgKyAnMTUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJyZXBsYWNlVmFsdWUgaXMgXCIkMTFcIiArIFwnQTE1XCciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICd1aWQ9MzEnOwp2YXIgX19yZSA9IC8odWlkPSkoXGQrKS87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ci5yZXBsYWNlKF9fcmUsICIkMTEiICsgJ0ExNScpIT09J3VpZD0xQTE1JyApIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ3VpZD0zMVwnOyB2YXIgX19yZSA9IC8odWlkPSkoXGQrKS87IF9fc3RyLnJlcGxhY2UoX19yZSwgIiQxMSIgKyBcJ0ExNVwnKT09PVwndWlkPTFBMTVcJyAuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsICIkMTEiICsgJ0ExNScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS8iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICJhYmMxMiBkZWYzNCI7CnZhciBfX3BhdHRlcm4gPSAvKFthLXpdKykoWzAtOV0rKS87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ci5yZXBsYWNlKF9fcGF0dGVybiwgX19yZXBsRk4pIT09JzEyYWJjIGRlZjM0JykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9ICJhYmMxMiBkZWYzNCI7IHZhciBfX3BhdHRlcm4gPSAvKFthLXpdKykoWzAtOV0rKS87IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhYmMgZGVmMzRcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS9nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAiYWJjMTIgZGVmMzQiOwp2YXIgX19wYXR0ZXJuID0gLyhbYS16XSspKFswLTldKykvZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikhPT0nMTJhYmMgMzRkZWYnKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gImFiYzEyIGRlZjM0IjsgdmFyIF9fcGF0dGVybiA9IC8oW2Etel0rKShbMC05XSspL2c7IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhYmMgMzRkZWZcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS9pIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAiYUJjMTIgZGVmMzQiOwp2YXIgX19wYXR0ZXJuID0gLyhbYS16XSspKFswLTldKykvaTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikhPT0nMTJhQmMgZGVmMzQnKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gImFCYzEyIGRlZjM0IjsgdmFyIF9fcGF0dGVybiA9IC8oW2Etel0rKShbMC05XSspL2k7IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhQmMgZGVmMzRcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1Q0IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS9pZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gImFCYzEyIGRFZjM0IjsKdmFyIF9fcGF0dGVybiA9IC8oW2Etel0rKShbMC05XSspL2lnOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKSE9PScxMmFCYyAzNGRFZicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSAiYUJjMTIgZEVmMzQiOyB2YXIgX19wYXR0ZXJuID0gLyhbYS16XSspKFswLTldKykvaWc7IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhQmMgMzRkRWZcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E1X1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAgcmVnZXhwIC9eKGErKVxcMSosXFwxKyQvIGFuZCByZXBsYWNlVmFsdWUgaXMgXCIkMVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAiYWFhYWFhYWFhYSxhYWFhYWFhYWFhYWFhYWEiOwp2YXIgX19wYXR0ZXJuID0gL14oYSspXDEqLFwxKyQvOwp2YXIgX19yZXBsID0gIiQxIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGwpIT09J2FhYWFhJykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9ICJhYWFhYWFhYWFhLGFhYWFhYWFhYWFhYWFhYSI7IHZhciBfX3BhdHRlcm4gPSAvXihhKylcMSosXDErJC87IHZhciBfX3JlcGwgPSAiJDEiOyBfX3N0ci5yZXBsYWNlKF9fcGF0dGVybiwgX19yZXBsKT09PVwnYWFhYWFcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGwpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E2IiwKCnBhdGg6ICIxNS41LjQuMTEsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E3IiwKCnBhdGg6ICIxNS41LjQuMTEsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIG9iamVjdCBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsKCnRyeSB7CiAgdmFyIF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZOwogICRGQUlMKCcjMTogX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9CgogfQp9KTsKCg==","id":"S15.5.4.11_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E4IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgpjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9IGNvdW50ID09PSAwLiBBY3R1YWw6ICcrY291bnQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E5IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCkgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUucmVwbGFjZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExLjFfVDEiLAoKcGF0aDogIjE1LjUuNC4xMiIsCgpkZXNjcmlwdGlvbjogIkNhbGwgc2VhcmNoKCkgaXMgdGhlIHNhbWUgc2VhcmNoKHVuZGVmaW5lZCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdmFyIHggPSAiIi5zZWFyY2goKTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A1.1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExMCIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzE6IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc2VhcmNoLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExMSIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnNlYXJjaCA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zZWFyY2godHJ1ZSkgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zZWFyY2ggPSBTdHJpbmcucHJvdG90eXBlLnNlYXJjaDsgIF9faW5zdGFuY2Uuc2VhcmNoKHRydWUpID09PSAwLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zZWFyY2godHJ1ZSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsKdmFyIF9fc3RyID0gInNzQUJCXHUwMDQxQkFCQUIiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICBpZiAoc2VhcmNoKF9fb2JqKSAhPT0yKSB7CiAgICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OyB2YXIgX19zdHIgPSAic3NBQkJcdTAwNDFCQUJBQiI7IHNlYXJjaChfX29iaikgPT09Mi4gQWN0dWFsOiAnK3NlYXJjaChfX29iaikgKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgd2l0aChzdHJfXyl7CiAgICB0cnkgewogICAgICB2YXIgeCA9IHNlYXJjaChfX29iaik7CiAgICAgICRGQUlMKCcjMTogdmFyIHggPSBzZWFyY2goX19vYmopIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvc3RyIjt9fQp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCJBQkJcdTAwNDFCQUJBQiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gc2VhcmNoKF9fb2JqKTsKICAgICAgJEZBSUwoJyMxOiB2YXIgeCA9IHNlYXJjaChfX29iaikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQlx1MDAzMUFCQUJcdTAwMzFCQkFBIi5zZWFyY2goX19vYmopICE9PTUpIHsKICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07ICJBQkJcXHUwMDQxQlxcdTAwMzFBQkFCXFx1MDAzMUJCQUEiLnNlYXJjaChfX29iaikgPT09NS4gQWN0dWFsOiAnKygiQUJCXHUwMDQxQlx1MDAzMUFCQUJcdTAwMzFCQkFBIi5zZWFyY2goX19vYmopKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgc3RyaW5nLCBhcmd1bWVudCBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIjc3Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5zZWFyY2goX19yZWcpICE9PSA5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fcmVnID0gbmV3IFJlZ0V4cCgiNzciKTsgIkFCQlxcdTAwNDFCQUJBQlxcdTAwMzdcXHUwMDM3QkJBQSIuc2VhcmNoKF9fcmVnKSA9PT0gOS4gQWN0dWFsOiAnKygiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5zZWFyY2goX19yZWcpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiBjYWxsLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2Uuc2VhcmNoID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2g7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnNlYXJjaChmdW5jdGlvbigpe3JldHVybiBmYWxzZTt9KCkpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnNlYXJjaCA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOyAgX19pbnN0YW5jZS5zZWFyY2goZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSgpKSA9PT0gMC4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc2VhcmNoKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc2VhcmNoID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2g7CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB2YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHNlYXJjaChldmFsKCJcImJqXCIiKSkgIT09IDIpIHsKICAkRVJST1IoJyMxOiBzZWFyY2ggPSBTdHJpbmcucHJvdG90eXBlLnNlYXJjaDsgc2VhcmNoKGV2YWwoIlxcImJqXFwiIikpID09PSAyLiBBY3R1YWw6ICcrc2VhcmNoKGV2YWwoIlwiYmpcIiIpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNlYXJjaCAocmVnZXhwKSB3aXRob3V0IGFyZ3VtZW50cyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIHNlYXJjaCgpIGV2YWx1YXRlcyB0byBzZWFyY2goIiIpCmlmICgiIi5zZWFyY2goKSAhPT0gMCkgewogICRFUlJPUignIzE6ICIiLnNlYXJjaCgpID09PSAwLiBBY3R1YWw6ICcrKCIiLnNlYXJjaCgpKSApOwp9CgppZiAoIi0tdW5kZWZpbmVkLS0iLnNlYXJjaCgpICE9IDApIHsKICAkRVJST1IoJyMxOiAiLS11bmRlZmluZWQtLSIuc2VhcmNoKCkgPT09IDAuIEFjdHVhbDogJysoIi0tdW5kZWZpbmVkLS0iLnNlYXJjaCgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBudWxsLCBhbmQgaW5zdGFuY2UgaXMgZnVuY3Rpb24gY2FsbCwgdGhhdCByZXR1cm4gc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcobnVsbCkgZXZhbHVhdGVzIHRvICJudWxsIiBzZWFyY2gobnVsbCkgZXZhbHVhdGVzIHRvIHNlYXJjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNlYXJjaChudWxsKSAhPT0gMSkgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc2VhcmNoKG51bGwpID09PSAxLiBBY3R1YWw6ICcrZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5zZWFyY2gobnVsbCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB4LCBhbmQgaW5zdGFuY2UgaXMgbmV3IFN0cmluZywgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBzZWFyY2godW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gc2VhcmNoKCJ1bmRlZmluZWQiKQppZiAobmV3IFN0cmluZygidW5kZWZpbmVkIikuc2VhcmNoKHgpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLnNlYXJjaCh4KSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoInVuZGVmaW5lZCIpLnNlYXJjaCh4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.12_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB1bmRlZmluZWQsIGFuZCBpbnN0YW5jZSBpcyBuZXcgU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc2VhcmNoKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIHNlYXJjaCgidW5kZWZpbmVkIikKaWYgKFN0cmluZygidW5kZWZpbmVkIikuc2VhcmNoKHVuZGVmaW5lZCkgIT09IDApIHsKICAkRVJST1IoJyMxOiBTdHJpbmcoInVuZGVmaW5lZCIpLnNlYXJjaCh1bmRlZmluZWQpID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nKCJ1bmRlZmluZWQiKS5zZWFyY2godW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB2b2lkIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcgb2JqZWN0IHdpdGggb3ZlcnJpZGVkIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh2b2lkIDApIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBzZWFyY2godm9pZCAwKSBldmFsdWF0ZXMgdG8gc2VhcmNoKCJ1bmRlZmluZWQiKQppZiAoU3RyaW5nKF9fb2JqKS5zZWFyY2godm9pZCAwKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07IFN0cmluZyhfX29iaikuc2VhcmNoKHZvaWQgMCkgPT09IDAuIEFjdHVhbDogJytTdHJpbmcoX19vYmopLnNlYXJjaCh2b2lkIDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiBjYWxsLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nIG9iamVjdCB3aXRoIG92ZXJyaWRlZCB0b1N0cmluZyBhbmQgdmFsdWVPZiBmdW5jdGlvbnMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHsKICAgIHZhbHVlT2Y6ZnVuY3Rpb24oKXt9LAogICAgdG9TdHJpbmc6dm9pZCAwCn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc2VhcmNoKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIHNlYXJjaCgidW5kZWZpbmVkIikKaWYgKG5ldyBTdHJpbmcoX19vYmopLnNlYXJjaChmdW5jdGlvbigpe30oKSkgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgbmV3IFN0cmluZyhfX29iaikuc2VhcmNoKGZ1bmN0aW9uKCl7fSgpKSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoX19vYmopLnNlYXJjaChmdW5jdGlvbigpe30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJTaW1wbGUgc2VhcmNoIHN1YnN0cmluZyBpbnNpZGUgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYVN0cmluZyA9IG5ldyBTdHJpbmcoInRlc3Qgc3RyaW5nIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChhU3RyaW5nLnNlYXJjaCgic3RyaW5nIikhPT0gNSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsgYVN0cmluZy5zZWFyY2goInN0cmluZyIpPT09IDUuIEFjdHVhbDogJythU3RyaW5nLnNlYXJjaCgic3RyaW5nIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBjYXNlIHNlbnNpdGl2ZSBvZiBzZWFyY2gsIGFyZ3VtZW50IGlzIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGFTdHJpbmcgPSBuZXcgU3RyaW5nKCJ0ZXN0IHN0cmluZyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoYVN0cmluZy5zZWFyY2goIlN0cmluZyIpIT09IC0xKSB7CiAgJEVSUk9SKCcjMTogdmFyIGFTdHJpbmcgPSBuZXcgU3RyaW5nKCJ0ZXN0IHN0cmluZyIpOyBhU3RyaW5nLnNlYXJjaCgiU3RyaW5nIik9PT0gLTEuIEFjdHVhbDogJythU3RyaW5nLnNlYXJjaCgiU3RyaW5nIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBkaXNhYmxpbmcgb2YgY2FzZSBzZW5zaXRpdmUgb2Ygc2VhcmNoLCBhcmd1bWVudCBpcyBSZWdFeHAiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGFTdHJpbmcuc2VhcmNoKC9TdHJpbmcvaSkhPT0gNSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsgYVN0cmluZy5zZWFyY2goL1N0cmluZy9pKT09PSA1LiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goL1N0cmluZy9pKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBjYXNlIHNlbnNpdGl2ZSBvZiBzZWFyY2gsIGFyZ3VtZW50IGlzIFJlZ0V4cCB3aXRoIHVwcGVyY2FzZSBzeW1ib2xzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYlN0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7CnZhciByZWdFeHAgPSAvRm91ci87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChiU3RyaW5nLnNlYXJjaChyZWdFeHApIT09IC0xKSB7CiAgJEVSUk9SKCcjMTogdmFyIGJTdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyB2YXIgcmVnRXhwID0gL0ZvdXIvOyBiU3RyaW5nLnNlYXJjaChyZWdFeHApPT09IC0xLiBBY3R1YWw6ICcrYlN0cmluZy5zZWFyY2gocmVnRXhwKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBjYXNlIHNlbnNpdGl2ZSBvZiBzZWFyY2gsIGFyZ3VtZW50IGlzIFJlZ0V4cCB3aXRob3V0IHVwcGVyY2FzZSBzeW1ib2xzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYlN0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7CnZhciByZWdFeHAgPSAvZm91ci87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChiU3RyaW5nLnNlYXJjaChyZWdFeHApIT09IDE0KSB7CiAgJEVSUk9SKCcjMTogdmFyIGJTdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyB2YXIgcmVnRXhwID0gL2ZvdXIvOyBiU3RyaW5nLnNlYXJjaChyZWdFeHApPT09IDE0LiBBY3R1YWw6ICcrYlN0cmluZy5zZWFyY2gocmVnRXhwKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJTZWFyY2hpbmcgdGhlIG5vbi1leGlzdGVudCBcIm5vdGV4aXN0XCIgc3Vic3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYVN0cmluZyA9IG5ldyBTdHJpbmcoInRlc3Qgc3RyaW5nIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChhU3RyaW5nLnNlYXJjaCgibm90ZXhpc3QiKSE9PSAtMSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsgYVN0cmluZy5zZWFyY2goIm5vdGV4aXN0Iik9PT0gLTEuIEFjdHVhbDogJythU3RyaW5nLnNlYXJjaCgibm90ZXhpc3QiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJTaW1wbGUgc2VhcmNoIHNlbnRlbmNlIGluc2lkZSBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmcgcHJvYmUiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGFTdHJpbmcuc2VhcmNoKCJzdHJpbmcgcHJvIikhPT0gNSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmcgcHJvYmUiKTsgYVN0cmluZy5zZWFyY2goInN0cmluZyBwcm8iKT09PSA1LiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goInN0cmluZyBwcm8iKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXN1bHRzIG9mIHNlYXJjaCByZWdleHAgd2l0aCBhbmQgd2l0aG91dCBnbG9iYWwgcHJvcGVydGllcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGFTdHJpbmcgPSBuZXcgU3RyaW5nKCJwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIG9mIHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIG9mIHRoZSBncmVhdCBzd29yZCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoYVN0cmluZy5zZWFyY2goL3RoZS8pIT09IGFTdHJpbmcuc2VhcmNoKC90aGUvZykpIHsKICAkRVJST1IoJyMxOiB2YXIgYVN0cmluZyA9IG5ldyBTdHJpbmcoInBvd2VyIG9mIHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIG9mIHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIGdyZWF0IHN3b3JkIik7IGFTdHJpbmcuc2VhcmNoKC90aGUvKT09PSBhU3RyaW5nLnNlYXJjaCgvdGhlL2cpLiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goL3RoZS8pKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXN1bHRzIG9mIHNlYXJjaCByZWdleHAgd2l0aCBhbmQgd2l0aG91dCBnbG9iYWwgcHJvcGVydGllcy4gVW5pY29kZSBzeW1ib2xzIHVzZWQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygicG93ZXIgXHUwMDZGXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgXHUwMDZGXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgXHUwMDZGXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgZ3JlYXQgc3dvcmQiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGFTdHJpbmcuc2VhcmNoKC9vZi8pIT09IGFTdHJpbmcuc2VhcmNoKC9vZi9nKSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygicG93ZXIgXFx1MDA2RlxcdTAwNjYgdGhlIHBvd2VyIG9mIHRoZSBwb3dlciBcXHUwMDZGXFx1MDA2NiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIFxcdTAwNkZcXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgZ3JlYXQgc3dvcmQiKTsgYVN0cmluZy5zZWFyY2goL29mLyk9PT0gYVN0cmluZy5zZWFyY2goL29mL2cpLiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goL29mLykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E2IiwKCnBhdGg6ICIxNS41LjQuMTIsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5wcm90b3R5cGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5wcm90b3R5cGUgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E3IiwKCnBhdGg6ICIxNS41LjQuMTIsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2ggb2JqZWN0IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2g7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIHRocm93IGEgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOyAgCiAgfQogICRQUklOVChlKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.12_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E4IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnNlYXJjaCl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuc2VhcmNoKXtpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrO307IGNvdW50ID09PSAwLiBBY3R1YWw6ICcrY291bnQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E5IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExMCIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExMSIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuc2xpY2UubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoZmFsc2UsIHRydWUpICE9PSAidCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7ICBfX2luc3RhbmNlLnNsaWNlKGZhbHNlLCB0cnVlKSA9PT0gInQiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zbGljZShmYWxzZSwgdHJ1ZSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3QgYW5kIGZ1bmN0aW9uIGNhbGwsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcsIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB2YWx1ZU9mIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAyO319OwoKdmFyIF9fc3RyID0gIlx1MDAzNUFCQkJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAoc2xpY2UoX19vYmosIGZ1bmN0aW9uKCl7cmV0dXJuIHNsaWNlKDAsMSk7fSgpKSAhPT0gIkJCQiIpIHsKICAgICAgJEVSUk9SKCcjMTogdmFyIHg7IHZhciBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDI7fX07IHZhciBfX3N0ciA9ICJcdTAwMzVBQkJCQUJBQiI7IHNsaWNlKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiBzbGljZSgwLDEpO30oKSkgPT09ICJCQkIiLiBBY3R1YWw6ICcrc2xpY2UoX19vYmosIGZ1bmN0aW9uKCl7cmV0dXJuIHNsaWNlKDAsMSk7fSgpKSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLCBvYmplY3RzIGhhdmUgb3ZlcnJpZGVkIHZhbHVlT2YgZnVuY3Rpb24sIHRoYXQgcmV0dXJuIGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBzbGljZShfX29iaixfX29iajIpOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBzbGljZShfX29iaixfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIT09Imluc3RhcnQiKSB7CiAgICAgICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5zdGFydCIuIEFjdHVhbDogJytlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoIkFCQlx1MDA0MUJBQkFCIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSBzbGljZShfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBzbGljZShfX29iaixfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnN0YXJ0IikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5zdGFydCIuIEFjdHVhbDogJytlKTsKICAgICAgfQogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsKdmFyIF9fb2JqMiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgICB2YXIgeCA9ICJBQkJcdTAwNDFCQUJBQlx1MDAzMUJCQUEiLnNsaWNlKF9fb2JqLCBfX29iajIpOwogICAgJEZBSUwoJyMxOiAidmFyIHggPSBzbGljZShfX29iaixfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgICBpZiAoZSE9PSJpbmVuZCIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImluZW5kIi4gQWN0dWFsOiAnK2UpOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiVXNlZCBvbmUgYXJndW1lbnQsIHRoYXQgaXMgZnVuY3Rpb24oKXt9KCkuIEluc3RhbmNlIGlzIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoInJlcG9ydCIuc2xpY2UoZnVuY3Rpb24oKXt9KCkpICE9PSAicmVwb3J0IikgewogICRFUlJPUignIzE6ICJyZXBvcnQiLnNsaWNlKGZ1bmN0aW9uKCl7fSgpKSA9PT0gInJlcG9ydCIuIEFjdHVhbDogJysicmVwb3J0Ii5zbGljZShmdW5jdGlvbigpe30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzbGljZSB3aXRob3V0IGFyZ3VtZW50cy4gSW5zdGFuY2UgaXMgTnVtYmVyIHdpdGggcHJvdG90eXBlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbnVtID0gMTEuMDAxMDAyOwoKTnVtYmVyLnByb3RvdHlwZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7CgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19udW0uc2xpY2UoKSE9PSIxMS4wMDEwMDIiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fbnVtID0gMTEuMDAxMDAyOyBOdW1iZXIucHJvdG90eXBlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsgX19udW0uc2xpY2UoKT09PSIxMS4wMDEwMDIiLiBBY3R1YWw6ICcrX19udW0uc2xpY2UoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZ1bmN0aW9uIGNhbGwgYW5kIHgsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuLiB4IGlzIHVuZGVmaW5lZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2Uuc2xpY2UgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zbGljZShmdW5jdGlvbigpe3JldHVybiB0cnVlO30oKSx4KSAhPT0gImFsc2UiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7ICBfX2luc3RhbmNlLnNsaWNlKGZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fSgpLHgpID09PSAiYWxzZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLnNsaWNlKGZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fSgpLHgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc2xpY2UgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKdmFyIF9fdG9nZ2xlID0gMTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHNsaWNlKGV2YWwoIlwiMVwiIikse3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gIjB4MDAwNyJ9fSkhPT0ib2JqZWN0IikgewogICRFUlJPUignIzE6IHNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsgc2xpY2UoZXZhbCgiXFwiMVxcIiIpLHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuICIweDAwMDcifX0pPT09Im9iamVjdCIuIEFjdHVhbDogJytzbGljZShldmFsKCJcIjFcIiIpLHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuICIweDAwMDcifX0pKTsKfTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIGZ1bmN0aW9uIGNhbGwsIHRoYXQgcmV0dXJuZWQgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvSW50ZWdlcihudWxsKSB5ZWxkcyAwCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc2xpY2UobnVsbCwgLTMpICE9PSAiZ251bGwiKSB7CiAgJEVSUk9SKCcjMTogZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5zbGljZShudWxsLCAtMykgPT09ICJnbnVsbCIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNsaWNlKG51bGwsIC0zKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIGNhbGwgb3RoZXIgc2xpY2Uoc3RhcnQsIGVuZCksIGFuZCBpbnN0YW5jZSBpcyBmdW5jdGlvbiBvYmplY3QsIHRoYXQgaGF2ZSBvdmVycmlkZWQgdmFsdWVPZiBhbmQgdG9TdHJpbmcgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBfX2Z1bmMudmFsdWVPZj1mdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifTsKX19mdW5jLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIF9fZnVuYzt9OwoKRnVuY3Rpb24ucHJvdG90eXBlLnNsaWNlPVN0cmluZy5wcm90b3R5cGUuc2xpY2U7CgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jLnNsaWNlKG51bGwsIEZ1bmN0aW9uKCkuc2xpY2UoX19mdW5jLDUpLmxlbmd0aCkgIT09ICJnbnVsbCIpIHsKICAkRVJST1IoJyMxOiBfX2Z1bmMuc2xpY2UobnVsbCwgRnVuY3Rpb24oKS5zbGljZShfX2Z1bmMsNSkubGVuZ3RoKSA9PT0gImdudWxsIi4gQWN0dWFsOiAnK19fZnVuYy5zbGljZShudWxsLCBGdW5jdGlvbigpLnNsaWNlKF9fZnVuYyw1KS5sZW5ndGgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmMoKXt9OwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHggYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIG5ldyBTdHJpbmcsIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQgeWVsZHMgMCkKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAobmV3IFN0cmluZygidW5kZWZpbmVkIikuc2xpY2UoeCwzKSAhPT0gInVuZCIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygidW5kZWZpbmVkIikuc2xpY2UoeCwzKSA9PT0gInVuZCIuIEFjdHVhbDogJytuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5zbGljZSh4LDMpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHN5bWJvbCBhbmQgdW5kZWZpbmVkLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvSW50ZWdlcigiZSIpIHllbGRzIDAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nKHZvaWQgMCkuc2xpY2UoImUiLHVuZGVmaW5lZCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKHZvaWQgMCkuc2xpY2UoImUiLHVuZGVmaW5lZCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICcrU3RyaW5nKHZvaWQgMCkuc2xpY2UoImUiLHVuZGVmaW5lZCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG5lZ2F0aXZlIG51bWJlciBhbmQgdm9pZCAwLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKG9iamVjdCksIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB0b1N0cmluZyBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vc2luY2Ugdm9pZCAwIHllbGRzIDAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nKF9fb2JqKS5zbGljZSgtNCx2b2lkIDApICE9PSAiaW5lZCIpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBTdHJpbmcoX19vYmopLnNsaWNlKC00LHZvaWQgMCkgPT09ICJpbmVkIi4gQWN0dWFsOiAnK1N0cmluZyhfX29iaikuc2xpY2UoLTQsdm9pZCAwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHVuZGVmaW5lZCBhbmQgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKG9iamVjdCksIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB2YWx1ZU9mIGFuZCB0b1N0cmluZyBmdW5jdGlvbnMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHsKICAgIHZhbHVlT2Y6ZnVuY3Rpb24oKXt9LAogICAgdG9TdHJpbmc6dm9pZCAwCn07CgovL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQpIHllbGRzIDAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAobmV3IFN0cmluZyhfX29iaikuc2xpY2UoLyooZnVuY3Rpb24oKXt9KSgpKi91bmRlZmluZWQsX19vYmopICE9PSAiIikgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBuZXcgU3RyaW5nKF9fb2JqKS5zbGljZSgvLyooZnVuY3Rpb24oKXt9KSgpKi8vdW5kZWZpbmVkLF9fb2JqKSA9PT0gIiIuIEFjdHVhbDogJytuZXcgU3RyaW5nKF9fb2JqKS5zbGljZSgvKihmdW5jdGlvbigpe30pKCkqL3VuZGVmaW5lZCxfX29iaikgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyB0eXBlIG9mIHNsaWNlKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHJpbmcuc2xpY2UoKSAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IHR5cGVvZiBfX3N0cmluZy5zbGljZSgpID09PSAic3RyaW5nIi4gQWN0dWFsOiAnK3R5cGVvZiBfX3N0cmluZy5zbGljZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBOYU4sIGVuZCBpcyBJbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygndGhpcyBpcyBhIHN0cmluZyBvYmplY3QnKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnNsaWNlKE5hTiwgSW5maW5pdHkpICE9PSAidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKFwndGhpcyBpcyBhIHN0cmluZyBvYmplY3RcJyk7IF9fc3RyaW5nLnNsaWNlKE5hTiwgSW5maW5pdHkpID09PSAidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoTmFOLCBJbmZpbml0eSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNsaWNlIGZyb20gZW1wdHkgU3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zbGljZSgxLDApICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygiIik7IF9fc3RyaW5nLnNsaWNlKDEsMCkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoMSwwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIE5hTiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnNsaWNlKEluZmluaXR5LCBOYU4pICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIE5hTikgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIE5hTikgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIEluZmluaXR5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIEluZmluaXR5KSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnNsaWNlKEluZmluaXR5LCBJbmZpbml0eSkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIEluZmluaXR5KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBuZWdhdGl2ZSBmbG9hdCBudW1iZXIsIGVuZCBpcyAwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc2xpY2UoLTAuMDEsMCkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOyBfX3N0cmluZy5zbGljZSgtMC4wMSwwKSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zbGljZSgtMC4wMSwwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCwgZW5kIGlzIHRlc3RlZF9zdHJpbmcubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc2xpY2UoX19zdHJpbmcubGVuZ3RoLCBfX3N0cmluZy5sZW5ndGgpICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc2xpY2UoX19zdHJpbmcubGVuZ3RoLCBfX3N0cmluZy5sZW5ndGgpID09PSAiIi4gQWN0dWFsOiAnK19fc3RyaW5nLnNsaWNlKF9fc3RyaW5nLmxlbmd0aCwgX19zdHJpbmcubGVuZ3RoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCsxLCBlbmQgaXMgMCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnNsaWNlKF9fc3RyaW5nLmxlbmd0aCsxLCAwKSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnNsaWNlKF9fc3RyaW5nLmxlbmd0aCsxLCAwKSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zbGljZShfX3N0cmluZy5sZW5ndGgrMSwgMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyAtSW5maW5pdHksIGVuZCBpcyAtSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zbGljZSgtSW5maW5pdHksIC1JbmZpbml0eSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOyBfX3N0cmluZy5zbGljZSgtSW5maW5pdHksIC1JbmZpbml0eSkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoLUluZmluaXR5LCAtSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIE9iamVjdCBpbnN0YW5jZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoMCw4KSAhPT0gIltvYmplY3QgIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7IF9faW5zdGFuY2Uuc2xpY2UgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOyBfX2luc3RhbmNlLnNsaWNlKDAsOCkgPT09ICJbb2JqZWN0ICIuIEFjdHVhbDogJytfX2luc3RhbmNlLnNsaWNlKDAsOCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIE9iamVjdCBpbnN0YW5jZSwgdXNlIG90aGVyIHZhbHVlIGZvciBzdGFydCBhbmQgZW5kIHZhbHVlcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoOCxfX2luc3RhbmNlLnRvU3RyaW5nKCkubGVuZ3RoKSAhPT0gIk9iamVjdF0iKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7IF9faW5zdGFuY2Uuc2xpY2UoOCxfX2luc3RhbmNlLnRvU3RyaW5nKCkubGVuZ3RoKSA9PT0gIk9iamVjdF0iLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zbGljZSg4LF9faW5zdGFuY2UudG9TdHJpbmcoKS5sZW5ndGgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIE9iamVjdCBpbnN0YW5jZSwgYW5kIGNhbGwgaW5zdGFuY2Uuc2xpY2UoLi4uKS5zbGljZSguLi4pIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9ICBmdW5jdGlvbigpe307CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoLUluZmluaXR5LDgpLnNsaWNlKDEsSW5maW5pdHkpICE9PSAidW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OyBfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsgX19pbnN0YW5jZS5zbGljZSgtSW5maW5pdHksOCkuc2xpY2UoMSxJbmZpbml0eSkgPT09ICJ1bmN0aW9uIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc2xpY2UoLUluZmluaXR5LDgpLnNsaWNlKDEsSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja25pZyBpZiBhcHBseWluZyBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIEZ1bmN0aW9uIG9iamVjdCBpbnN0YW5jZSBwYXNzZXMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRkFDVE9SWS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXMudmFsdWUrJyc7IH07Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkodm9pZCAwKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoMCwxMDApICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2Uuc2xpY2UoMCwxMDApID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc2xpY2UoMCwxMDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX0ZBQ1RPUlkoIHZhbHVlICkgewogICAgdGhpcy52YWx1ZSA9IHZhbHVlLAogICAgdGhpcy5zbGljZT0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKICAgIC8vdGhpcy5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.13_A3_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E2IiwKCnBhdGg6ICIxNS41LjQuMTMsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnNsaWNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc2xpY2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNsaWNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E3IiwKCnBhdGg6ICIxNS41LjQuMTMsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICAkUFJJTlQoZSk7Cn0KCiB9Cn0pOwoK","id":"S15.5.4.13_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E4IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnNsaWNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc2xpY2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnNsaWNlKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5zbGljZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E5IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc2xpY2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc2xpY2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc2xpY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCh0cnVlLCBmYWxzZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KHRydWUsIGZhbHNlKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCh0cnVlLCBmYWxzZSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDApIHsKICAkRVJST1IoJyMzOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KHRydWUsIGZhbHNlKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDJCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gdHJ1ZTt9fQp2YXIgX19zdHIgPSAiQUJCXHUwMDQxQkFCQUIiOwoKd2l0aChfX3N0cil7CiAgICBfX3NwbGl0ID0gc3BsaXQoX19vYmosIF9fb2JqMik7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX07IHZhciBfX3N0ciA9ICJBQkJ1MDA0MUJBQkFCIjsgd2l0aChfX3N0cil7X19zcGxpdCA9IHNwbGl0KF9fb2JqLCBfX29iajIpO307IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX07IHZhciBfX3N0ciA9ICJBQkJ1MDA0MUJBQkFCIjsgd2l0aChfX3N0cil7X19zcGxpdCA9IHNwbGl0KF9fb2JqLCBfX29iajIpO307IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMzOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQyQiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB0cnVlO319OyB2YXIgX19zdHIgPSAiQUJCdTAwNDFCQUJBQiI7IHdpdGgoX19zdHIpe19fc3BsaXQgPSBzcGxpdChfX29iaiwgX19vYmoyKTt9OyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiQSIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQyQiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB0cnVlO319OyB2YXIgX19zdHIgPSAiQUJCdTAwNDFCQUJBQiI7IHdpdGgoX19zdHIpe19fc3BsaXQgPSBzcGxpdChfX29iaiwgX19vYmoyKTt9OyBfX3NwbGl0WzBdID09PSAiQSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludGVnZXIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBzcGxpdChfX29iaiwgX19vYmoyKTsKICAgICAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3BsaXQoX19vYmosIF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW50b2ludGVnZXIiKSB7CiAgICAgICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b2ludGVnZXIiLiBBY3R1YWw6ICcrZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50ZWdlciI7fX0KdmFyIF9fc3RyID0gbmV3IFN0cmluZygiQUJCXHUwMDQxQkFCQUIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB0cnkgewogICAgICB2YXIgeCA9IHNwbGl0KF9fb2JqLCBfX29iajIpOwogICAgICAkRkFJTCgnIzE6ICJ2YXIgeCA9IHNwbGl0KF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDJcdTAwNDIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIyIjt9fQoKdmFyIF9fc3BsaXQgPSAiQUJCXHUwMDQxQkFCQUJcdTAwNDJjY15eXHUwMDQyQnZ2JSVCXHUwMDQyeHh4Ii5zcGxpdChfX29iaiwgX19vYmoyKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJ1MDA0MiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIyIjt9fTsgX19zcGxpdCA9ICJBQkJ1MDA0MUJBQkFCdTAwNDJjY15edTAwNDJCdnYlJUJ1MDA0Mnh4eCIuc3BsaXQoX19vYmosIF9fb2JqMik7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJ1MDA0MiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIyIjt9fTsgX19zcGxpdCA9ICJBQkJ1MDA0MUJBQkFCdTAwNDJjY15edTAwNDJCdnYlJUJ1MDA0Mnh4eCIuc3BsaXQoX19vYmosIF9fb2JqMik7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQydTAwNDIiO319OyB2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiMiI7fX07IF9fc3BsaXQgPSAiQUJCdTAwNDFCQUJBQnUwMDQyY2NeXnUwMDQyQnZ2JSVCdTAwNDJ4eHgiLnNwbGl0KF9fb2JqLCBfX29iajIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiQSIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQydTAwNDIiO319OyB2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiMiI7fX07IF9fc3BsaXQgPSAiQUJCdTAwNDFCQUJBQnUwMDQyY2NeXnUwMDQyQnZ2JSVCdTAwNDJ4eHgiLnNwbGl0KF9fb2JqLCBfX29iajIpOyBfX3NwbGl0WzBdID09PSAiQSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzFdICE9PSAiQUJBQkEiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJ1MDA0MnUwMDQyIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIjIiO319OyBfX3NwbGl0ID0gIkFCQnUwMDQxQkFCQUJ1MDA0MmNjXl51MDA0MkJ2diUlQnUwMDQyeHh4Ii5zcGxpdChfX29iaiwgX19vYmoyKTsgX19zcGxpdFsxXSA9PT0gIkFCQUJBIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Owp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludCI7fX07CnZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAwMS4xMDAwMSk7Ck51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gc3BsaXQoX19vYmosIF9fb2JqMik7CiAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3BsaXQoX19vYmosIF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9pbnQiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvaW50Ii4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvc3RyIjt9fTsKCnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50ZWdlciI7fX07CgpfX0ZBQ1RPUlkucHJvdG90eXBlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19pbnN0YW5jZS5zcGxpdChfX29iaiwgX19vYmoyKTsKICAkRkFJTCgnIzE6ICJ2YXIgeCA9IF9faW5zdGFuY2Uuc3BsaXQoX19vYmosIF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b2ludGVnZXIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19GQUNUT1JZKCB2YWx1ZSApIHsKICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgIHRoaXMudG9TdHJpbmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuIG5ldyBOdW1iZXI7IH07CiAgICB0aGlzLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZSsiIn07Cn0KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgTnVtYmVyLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIC9cdTAwMzdcdTAwMzcvZzt9fTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnRyeSB7CiAgdmFyIF9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX29iaik7CiAgJEZBSUwoJyMxOiAiX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fb2JqKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiBpcyBpbnN0YW5jZSBvZiBUeXBlRXJyb3IuIEFjdHVhbDogJytlKTsKICB9Cn0KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwLCBhbmQgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZSA9IC9cdTAwMzdcdTAwMzcvZzsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCl9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX3JlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDQpIHsKICAkRVJST1IoJyMzOiB2YXIgX19yZSA9IC91MDAzN3UwMDM3L2c7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gNC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiNiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19yZSA9IC91MDAzN3UwMDM3L2c7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUpOyBfX3NwbGl0WzBdID09PSAiNiIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzFdICE9PSAiNjc2NzYiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fcmUgPSAvdTAwMzd1MDAzNy9nOyBOdW1iZXIucHJvdG90eXBlLnNwbGl0PVN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX3JlKTsgX19zcGxpdFsxXSA9PT0gIjY3Njc2Ii4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3BsaXRbMl0gIT09ICIuMDA2IikgewogICRFUlJPUignIzY6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IF9fc3BsaXRbMl0gPT09ICIuMDA2Ii4gQWN0dWFsOiAnK19fc3BsaXRbMl0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzcKaWYgKF9fc3BsaXRbM10gIT09ICIxIikgewogICRFUlJPUignIzc6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IF9fc3BsaXRbM10gPT09ICIxIi4gQWN0dWFsOiAnK19fc3BsaXRbM10gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fcmUgPSAgbmV3IFJlZ0V4cCgiMDAiKTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSwgZXZhbCgiXCIxXCIiKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19yZSA9ICBuZXcgUmVnRXhwKCIwMCIpOyBOdW1iZXIucHJvdG90eXBlLnNwbGl0PVN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX3JlLCBldmFsKCIiMSIiKSk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX3JlID0gIG5ldyBSZWdFeHAoIjAwIik7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUsIGV2YWwoIiIxIiIpKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzM6IHZhciBfX3JlID0gIG5ldyBSZWdFeHAoIjAwIik7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUsIGV2YWwoIiIxIiIpKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIjY3NzY3Njc2NzcuIikgewogICRFUlJPUignIzM6IHZhciBfX3JlID0gIG5ldyBSZWdFeHAoIjAwIik7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUsIGV2YWwoIiIxIiIpKTsgX19zcGxpdFswXSA9PT0gIjY3NzY3Njc2NzcuIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGJvb2xlYW4gZXhwcmVzc2lvbiwgZnVuY3Rpb24gY2FsbCBhbmQgbnVsbCwgYW5kIGluc3RhbmNlIGlzIEJvb2xlYW4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgiQSIhPT0iXHUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgiQSIhPT0idTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoIkEiIT09InUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDApIHsKICAkRVJST1IoJyMzOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgiQSIhPT0idTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fb2JqX19saW0gPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiA1O319OwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCnZhciBfX3NwbGl0ID0gc3BsaXQoZXZhbCgiXCJbXCIiKSxfX29ial9fbGltKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzFdLnN1YnN0cmluZygwLDYpICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzQ6IF9fc3BsaXRbMV0uc3Vic3RyaW5nKDAsNikgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrX19zcGxpdFsxXS5zdWJzdHJpbmcoMCw2KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0IHdpdGhvdXQgYXJndW1lbnRzLCBhbmQgaW5zdGFuY2UgaXMgZW1wdHkgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIHNwbGl0KCkgZXZhbHVhdGVzIHRvIHNwbGl0KCIiLDApCnZhciBfX3NwbGl0ID0gIiIuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3BsaXQgPSAiIi5zcGxpdCgpOyB0eXBlb2YgX19zcGxpdCA9PT0gIm9iamVjdCIuIEFjdHVhbDogJyt0eXBlb2YgX19zcGxpdCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0ID0gIiIuc3BsaXQoKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzM6IF9fc3BsaXQgPSAiIi5zcGxpdCgpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiIikgewogICRFUlJPUignIzQ6IF9fc3BsaXQgPSAiIi5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBudWxsLCBhbmQgaW5zdGFuY2UgaXMgZnVuY3Rpb24gY2FsbCB0aGF0IHJldHVybmVkIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIHNwbGl0KG51bGwpIGV2YWx1YXRlcyB0byBzcGxpdCgibnVsbCIsMCkKdmFyIF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3BsaXQgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc3BsaXQobnVsbCk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAyKSB7CiAgJEVSUk9SKCcjMzogX19zcGxpdCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc3BsaXQobnVsbCk7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMF0gIT09ICJnIikgewogICRFUlJPUignIzQ6IF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOyBfX3NwbGl0WzBdID09PSAiZyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzFdICE9PSAidW5hIikgewogICRFUlJPUignIzU6IF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOyBfX3NwbGl0WzFdID09PSAidW5hIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB4LCBhbmQgaW5zdGFuY2UgaXMgbmV3IFN0cmluZy4geCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gIiIgc3BsaXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gc3BsaXQoIiIsMCkKdmFyIF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgX19zcGxpdCA9IG5ldyBTdHJpbmcoIjF1bmRlZmluZWQiKS5zcGxpdCh4KTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogdmFyIHg7IF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiB2YXIgeDsgX19zcGxpdCA9IG5ldyBTdHJpbmcoIjF1bmRlZmluZWQiKS5zcGxpdCh4KTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFswXSAhPT0gIjEiKSB7CiAgJEVSUk9SKCcjNDogdmFyIHg7IF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7IF9fc3BsaXRbMF0gPT09ICIxIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNTogdmFyIHg7IF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB1bmRlZmluZWQsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc3BsaXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gc3BsaXQoInVuZGVmaW5lZCIsMCkKdmFyIF9fc3BsaXQgPSBTdHJpbmcoInVuZGVmaW5lZGQiKS5zcGxpdCh1bmRlZmluZWQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3BsaXQgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IF9fc3BsaXQgPSBTdHJpbmcoInVuZGVmaW5lZGQiKS5zcGxpdCh1bmRlZmluZWQpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAyKSB7CiAgJEVSUk9SKCcjMzogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXRbMF0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsxXSAhPT0gImQiKSB7CiAgJEVSUk9SKCcjNTogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXRbMV0gPT09ICJkIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB2b2lkIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcob2JqZWN0KSwgb2JqZWN0IGhhdmUgb3ZlcnJpZGVkIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vc2luY2UgVG9TdHJpbmcodm9pZCAwKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc3BsaXQodm9pZCAwKSBldmFsdWF0ZXMgdG8gc3BsaXQoInVuZGVmaW5lZCIpCnZhciBfX3NwbGl0ID0gU3RyaW5nKF9fb2JqKS5zcGxpdCh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3BsaXQgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzM6IF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07IF9fc3BsaXQgPSBTdHJpbmcoX19vYmopLnNwbGl0KHZvaWQgMCk7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgX19zcGxpdFswXSAhPT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgX19zcGxpdFsxXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbigpe30oKSwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhvYmplY3QpLCBvYmplY3QgaGF2ZSBvdmVycmlkZWQgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7CiAgICB2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwKICAgIHRvU3RyaW5nOnZvaWQgMAp9OwoKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBzcGxpdCh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byBzcGxpdCgidW5kZWZpbmVkIikKdmFyIF9fc3BsaXQgPSBuZXcgU3RyaW5nKF9fb2JqKS5zcGxpdChmdW5jdGlvbigpe30oKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19zcGxpdCA9IG5ldyBTdHJpbmcoX19vYmopLnNwbGl0KGZ1bmN0aW9uKCl7fSgpKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fc3BsaXQgPSBuZXcgU3RyaW5nKF9fb2JqKS5zcGxpdChmdW5jdGlvbigpe30oKSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19zcGxpdCA9IG5ldyBTdHJpbmcoX19vYmopLnNwbGl0KGZ1bmN0aW9uKCl7fSgpKTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19zcGxpdCA9IG5ldyBTdHJpbmcoX19vYmopLnNwbGl0KGZ1bmN0aW9uKCl7fSgpKTsgX19zcGxpdFswXSAhPT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fc3BsaXQgPSBuZXcgU3RyaW5nKF9fb2JqKS5zcGxpdChmdW5jdGlvbigpe30oKSk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwiLFwiKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwib25lLHR3byx0aHJlZSxmb3VyLGZpdmVcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiLCIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSA1KSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXQubGVuZ3RoID09PSA1LiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXRbMF0gPT09ICJvbmUiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gInR3byIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiwiKTsgX19zcGxpdFsxXSA9PT0gInR3byIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAidGhyZWUiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXRbMl0gPT09ICJ0aHJlZSIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3NwbGl0WzNdICE9PSAiZm91ciIpIHsKICAkRVJST1IoJyM2OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiwiKTsgX19zcGxpdFszXSA9PT0gImZvdXIiLiBBY3R1YWw6ICcrX19zcGxpdFszXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNwppZiAoX19zcGxpdFs0XSAhPT0gImZpdmUiKSB7CiAgJEVSUk9SKCcjNzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXRbNF0gPT09ICJmaXZlIi4gQWN0dWFsOiAnK19fc3BsaXRbNF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxMjMpLCBpbnN0YW5jZSBpcyBcInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3RcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOwp2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoMTIzKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KDEyMyk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KDEyMyk7IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvciAoIHZhciBpID0gMDsgaSA8IF9fZXhwZWN0ZWQubGVuZ3RoOyBpKysgKSB7CiAgICBpZiAoX19leHBlY3RlZFtpXSE9PV9fc3BsaXRbaV0pIHsKICAgICAgJEVSUk9SKCcjMy4nK2krJzogdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KDEyMyk7IF9fZXhwZWN0ZWRbJytpKyddPT09X19zcGxpdFsnK2krJ10uIEFjdHVhbDogJytfX2V4cGVjdGVkW2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIjpcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcIm9uZS0xLHR3by0yLGZvdXItNFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEsdHdvLTIsZm91ci00Iik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCI6Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIjoiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIjoiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZS0xLHR3by0yLGZvdXItNCIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSx0d28tMixmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCI6Iik7IF9fc3BsaXRbMF0gPT09ICJvbmUtMSx0d28tMixmb3VyLTQiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcInItNDJcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcIm9uZS0xIHR3by0yIGZvdXItNFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJyLTQyIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoInItNDIiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoInItNDIiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZS0xIHR3by0yIGZvdXItNCIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiBmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJyLTQyIik7IF9fc3BsaXRbMF0gPT09ICJvbmUtMSB0d28tMiBmb3VyLTQiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIi00XCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUtMSB0d28tMiBmb3VyLTRcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiLTQiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiLTQiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIi00Iik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUtMSB0d28tMiBmb3VyIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIi00Iik7IF9fc3BsaXRbMF0gPT09ICJvbmUtMSB0d28tMiBmb3VyIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiBmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCItNCIpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIm9uXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUtMSB0d28tMiBmb3VyLTRcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgib24iKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgib24iKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm9uIik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgib24iKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICJlLTEgdHdvLTIgZm91ci00IikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm9uIik7IF9fc3BsaXRbMV0gPT09ICJlLTEgdHdvLTIgZm91ci00Ii4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIlwiKSwgaW5zdGFuY2UgaXMgZW1wdHkgU3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0WzBdID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIiBcIiksIGluc3RhbmNlIGlzIGVtcHR5IFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIlwiKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiIFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiAiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0WzBdID09PSAiICIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIiBcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcIiBcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFsxXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcInhcIiksIGluc3RhbmNlIGlzIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gIiI7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJ4Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9ICIiOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIngiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9ICIiOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIngiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSAiIjsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJ4Iik7IF9fc3BsaXRbMF0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwiIFwiKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwib25lIHR3byB0aHJlZSBmb3VyIGZpdmVcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiICIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSA1KSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXQubGVuZ3RoID09PSA1LiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXRbMF0gPT09ICJvbmUiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gInR3byIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFsxXSA9PT0gInR3byIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAidGhyZWUiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXRbMl0gPT09ICJ0aHJlZSIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3NwbGl0WzNdICE9PSAiZm91ciIpIHsKICAkRVJST1IoJyM2OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFszXSA9PT0gImZvdXIiLiBBY3R1YWw6ICcrX19zcGxpdFszXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNwppZiAoX19zcGxpdFs0XSAhPT0gImZpdmUiKSB7CiAgJEVSUk9SKCcjNzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXRbNF0gPT09ICJmaXZlIi4gQWN0dWFsOiAnK19fc3BsaXRbNF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChuZXcgUmVnRXhwKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgdGhyZWUtMyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChuZXcgUmVnRXhwKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgdGhyZWUtMyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQobmV3IFJlZ0V4cCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fc3RyaW5nLmxlbmd0aCkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIHRocmVlLTMiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KG5ldyBSZWdFeHApOyBfX3NwbGl0Lmxlbmd0aCA9PT0gX19zdHJpbmcubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yICggdmFyIGkgPSAwOyBpIDwgX19zdHJpbmcubGVuZ3RoOyBpKysgKSB7CiAgICBpZiAoX19zdHJpbmcuY2hhckF0KGkpIT09X19zcGxpdFtpXSkgewogICAgICAkRVJST1IoJyMzLicraSsnOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiB0aHJlZS0zIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChuZXcgUmVnRXhwKTsgX19zdHJpbmcuY2hhckF0KCcraSsnKT09PV9fc3BsaXRbJytpKyddLiBBY3R1YWw6ICcrX19zdHJpbmcuY2hhckF0KGkpKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T20"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxsXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImxsIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibGwiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibGwiKTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibGwiKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJsbCIpOyBfX3NwbGl0WzFdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T21"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImwiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibCIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMy4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJsIik7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJsIik7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAibyIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImwiKTsgX19zcGxpdFsyXSA9PT0gIm8iLiBBY3R1YWw6ICcrX19zcGxpdFsyXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T22"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcInhcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgieCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIngiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgieCIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGVsbG8iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJ4Iik7IF9fc3BsaXRbMF0gPT09ICJoZWxsbyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T23"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImhcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImgiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaCIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaCIpOyBfX3NwbGl0WzBdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gImVsbG8iKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJoIik7IF9fc3BsaXRbMV0gPT09ICJlbGxvIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T24"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIm9cIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm8iKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibyIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGVsbCIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm8iKTsgX19zcGxpdFswXSA9PT0gImhlbGwiLiBBY3R1YWw6ICcrX19zcGxpdFswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAiIikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibyIpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T25"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImhlbGxvXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImhlbGxvIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG8iKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG8iKTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImhlbGxvIik7IF9fc3BsaXRbMF0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAiIikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG8iKTsgX19zcGxpdFsxXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T26"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCh1bmRlZmluZWQpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodW5kZWZpbmVkKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodW5kZWZpbmVkKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlbGxvIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh1bmRlZmluZWQpOyBfX3NwbGl0WzBdID09PSAiaGVsbG8iLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T27"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImhlbGxvdGhlcmVcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG90aGVyZSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImhlbGxvdGhlcmUiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG90aGVyZSIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGVsbG8iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJoZWxsb3RoZXJlIik7IF9fc3BsaXRbMF0gPT09ICJoZWxsbyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T28"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxKSwgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoMTAwMTExMTIyMTMzMTQ0MTU1KTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KDEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbIiIsIjAwIiwiIiwiIiwiIiwiMjIiLCIzMyIsIjQ0IiwiNjAiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T29"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KC8gLywyKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwib25lIHR3byB0aHJlZSBmb3VyIGZpdmVcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8gLywyKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8gLywyKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgvIC8sMik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8gLywyKTsgX19zcGxpdFswXSA9PT0gIm9uZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAidHdvIikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgvIC8sMik7IF9fc3BsaXRbMV0gPT09ICJ0d28iLiBBY3R1YWw6ICcrX19zcGxpdFsxXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDEpLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwxKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T30"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDIpLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwyKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiLCIwMCJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T31"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDApLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwwKTsKCnZhciBfX2V4cGVjdGVkID0gW107CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09IF9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyMzOiBfX3NwbGl0WzBdID09PSAnK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T32"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDEwMCksIGluc3RhbmNlIGlzIE51bWJlciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDExMTEyMjEzMzE0NDE1NSk7CgpOdW1iZXIucHJvdG90eXBlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgxLDEwMCk7Cgp2YXIgX19leHBlY3RlZCA9IFsiIiwiMDAiLCIiLCIiLCIiLCIyMiIsIjMzIiwiNDQiLCI2MCJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T33"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLHZvaWQgMCksIGluc3RhbmNlIGlzIE51bWJlciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDExMTEyMjEzMzE0NDE1NSk7CgpOdW1iZXIucHJvdG90eXBlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgxLHZvaWQgMCk7Cgp2YXIgX19leHBlY3RlZCA9IFsiIiwiMDAiLCIiLCIiLCIiLCIyMiIsIjMzIiwiNDQiLCI2MCJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMzogX19zcGxpdFtpbmRleF0gPT09IF9fZXhwZWN0ZWRbaW5kZXhdLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T34"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLCBNYXRoLnBvdygyLDMyKS0xKSwgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoMTAwMTExMTIyMTMzMTQ0MTU1KTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KDEsIE1hdGgucG93KDIsMzIpLTEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbIiIsIjAwIiwiIiwiIiwiIiwiMjIiLCIzMyIsIjQ0IiwiNjAiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0W2luZGV4XSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T35"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLFwiYm9vXCIpLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwgImJvbyIpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T36"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLC1NYXRoLnBvdygyLDMyKSsxKSwgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoMTAwMTExMTIyMTMzMTQ0MTU1KTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KDEsIC1NYXRoLnBvdygyLDMyKSsxKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T37"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIixOYU4pLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgTmFOKTsKCnZhciBfX2V4cGVjdGVkID0gW107CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCBOYU4pOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIE5hTik7IF9fZXhwZWN0ZWQgPSBbXTsgX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09IF9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyMzOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgTmFOKTsgX19leHBlY3RlZCA9IFtdOyBfX3NwbGl0WzBdID09PSAnK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7Cn0KLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T38"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwwKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOwoKdmFyIF9fZXhwZWN0ZWQgPSBbXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSBfX2V4cGVjdGVkWzBdKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T39"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwiXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUgdHdvIHRocmVlXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX3N0cmluZy5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7IF9fc3BsaXQubGVuZ3RoID09PSBfX3N0cmluZy5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0WzBdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAibiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7IF9fc3BsaXRbMV0gPT09ICJuIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMTFdICE9PSAiZSIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7IF9fc3BsaXRbMTFdID09PSAiZSIuIEFjdHVhbDogJytfX3NwbGl0WzExXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNgppZiAoX19zcGxpdFsxMl0gIT09ICJlIikgewogICRFUlJPUignIzY6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdFsxMl0gPT09ICJlIi4gQWN0dWFsOiAnK19fc3BsaXRbMTJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwxKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAxKTsgX19leHBlY3RlZCA9IFsiaGUiXTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgMSk7IF9fZXhwZWN0ZWQgPSBbImhlIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSBfX2V4cGVjdGVkWzBdKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDEpOyBfX2V4cGVjdGVkID0gWyJoZSJdOyBfX3NwbGl0WzBdID09PSAnK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7Cn0KLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T40"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwyKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDIpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIiwiIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAyKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiXTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgMik7IF9fZXhwZWN0ZWQgPSBbImhlIiwiIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAyKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiXTsgX19zcGxpdFtpbmRleF0gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T41"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwzKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDMpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgMyk7IF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAzKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAzKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T42"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiw0KSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDQpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgNCk7IF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCA0KTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCA0KTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T43"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KC8sLyksIGluc3RhbmNlIGlzIFN0cmluZyhcIm9uZS0xLHR3by0yLGZvdXItNFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEsdHdvLTIsZm91ci00Iik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8sLyk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdC5sZW5ndGggPT09IDMuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZS0xIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdFswXSA9PT0gIm9uZS0xIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICJ0d28tMiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSx0d28tMixmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8sLyk7IF9fc3BsaXRbMV0gPT09ICJ0d28tMiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAiZm91ci00IikgewogICRFUlJPUignIzU6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdFsyXSA9PT0gImZvdXItNCIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwnXCcpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUtMSB0d28tMiBmb3VyLTRcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIHRocmVlLTMiKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoJycpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiB0aHJlZS0zIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChcJ1wnKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19zdHJpbmcubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgdGhyZWUtMyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoXCdcJyk7IF9fc3BsaXQubGVuZ3RoID09PSBfX3N0cmluZy5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IgKCB2YXIgaSA9IDA7IGkgPCBfX3N0cmluZy5sZW5ndGg7IGkrKyApIHsKICAgIGlmIChfX3NwbGl0W2ldIT09X19zdHJpbmcuY2hhckF0KGkpKSB7CiAgICAgICRFUlJPUignIzMuJytpKyc6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIHRocmVlLTMiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KFwnXCcpOyBfX3NwbGl0WycraSsnXT09PV9fc3RyaW5nLmNoYXJBdCgnK2krJykuIEFjdHVhbDogJytfX3NwbGl0W2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KHZvaWQgMCksIGluc3RhbmNlIGlzIFwidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdFwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7CnZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodm9pZCAwKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodm9pZCAwKTsgX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yICggdmFyIGkgPSAwOyBpIDwgX19leHBlY3RlZC5sZW5ndGg7IGkrKyApIHsKICAgIGlmIChfX2V4cGVjdGVkW2ldIT09X19zcGxpdFtpXSkgewogICAgICAkRVJST1IoJyMzLicraSsnOiB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodm9pZCAwKTsgX19leHBlY3RlZFsnK2krJ109PT0nK19fc3BsaXRbaV0rJy4gQWN0dWFsOiAnK19fZXhwZWN0ZWRbaV0pOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KG51bGwpLCBpbnN0YW5jZSBpcyBcInRoaXNudWxsaXNudWxsYW51bGxzdHJpbmdudWxsb2JqZWN0XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJ0aGlzbnVsbGlzbnVsbGFudWxsc3RyaW5nbnVsbG9iamVjdCI7CnZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChudWxsKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gInRoaXNudWxsaXNudWxsYW51bGxzdHJpbmdudWxsb2JqZWN0IjsgdmFyIF9fZXhwZWN0ZWQgPSBbInRoaXMiLCAiaXMiLCAiYSIsICJzdHJpbmciLCAib2JqZWN0Il07IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChudWxsKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSAidGhpc251bGxpc251bGxhbnVsbHN0cmluZ251bGxvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KG51bGwpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IgKCB2YXIgaSA9IDA7IGkgPCBfX2V4cGVjdGVkLmxlbmd0aDsgaSsrICkgewogICAgaWYgKF9fZXhwZWN0ZWRbaV0hPT1fX3NwbGl0W2ldKSB7CiAgICAgICRFUlJPUignIzMuJytpKyc6IHZhciBfX3N0cmluZyA9ICJ0aGlzbnVsbGlzbnVsbGFudWxsc3RyaW5nbnVsbG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQobnVsbCk7IF9fZXhwZWN0ZWRbJytpKyddPT09JytfX3NwbGl0W2ldKycuIEFjdHVhbDogJytfX2V4cGVjdGVkW2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KHRydWUpLCBpbnN0YW5jZSBpcyBcInRoaXN0cnVlaXN0cnVlYXRydWVzdHJpbmd0cnVlb2JqZWN0XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJ0aGlzdHJ1ZWlzdHJ1ZWF0cnVlc3RyaW5ndHJ1ZW9iamVjdCI7CnZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh0cnVlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gInRoaXN0cnVlaXN0cnVlYXRydWVzdHJpbmd0cnVlb2JqZWN0IjsgdmFyIF9fZXhwZWN0ZWQgPSBbInRoaXMiLCAiaXMiLCAiYSIsICJzdHJpbmciLCAib2JqZWN0Il07IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh0cnVlKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSAidGhpc3RydWVpc3RydWVhdHJ1ZXN0cmluZ3RydWVvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KHRydWUpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IgKCB2YXIgaSA9IDA7IGkgPCBfX2V4cGVjdGVkLmxlbmd0aDsgaSsrICkgewogICAgaWYgKF9fZXhwZWN0ZWRbaV0hPT1fX3NwbGl0W2ldKSB7CiAgICAgICRFUlJPUignIzMuJytpKyc6IHZhciBfX3N0cmluZyA9ICJ0aGlzdHJ1ZWlzdHJ1ZWF0cnVlc3RyaW5ndHJ1ZW9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodHJ1ZSk7IF9fZXhwZWN0ZWRbJytpKyddPT09JytfX3NwbGl0W2ldKycuIEFjdHVhbDogJytfX2V4cGVjdGVkW2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZVwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgbmV3IFN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZzsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A3_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgU3RyaW5nKFwiIFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCIgIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiAiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIiAiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBPYmplY3QoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJbb2JqZWN0IE9iamVjdF0iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiW29iamVjdCBPYmplY3RdIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBmdW5jdGlvbigpe30iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBmdW5jdGlvbigpe307IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBmdW5jdGlvbigpe307IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdLnN1YnN0cmluZygwLDgpICE9PSAiZnVuY3Rpb24iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBmdW5jdGlvbigpe307IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdLnN1YnN0cmluZygwLDgpID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6ICcrX19zcGxpdFswXS5zdWJzdHJpbmcoMCw4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBOdW1iZXIoTmFOKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKE5hTik7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKE5hTik7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiTmFOIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A3_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBOdW1iZXIoLTEyMzQ1Njc4OTApIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTEyMzQ1Njc4OTApOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKC0xMjM0NTY3ODkwKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTEyMzQ1Njc4OTApOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIi0xMjM0NTY3ODkwIikgewogICRFUlJPUignIzM6IHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigtMTIzNDU2Nzg5MCk7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiLTEyMzQ1Njc4OTAiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBOdW1iZXIoLTFlMjEpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTFlMjEpOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKC0xZTIxKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTFlMjEpOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19pbnN0YW5jZS50b1N0cmluZygpKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKC0xZTIxKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXRbMF0gPT09IF9faW5zdGFuY2UudG9TdHJpbmcoKS4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A3_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBNYXRoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IE1hdGg7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IE1hdGg7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBNYXRoOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIltvYmplY3QgTWF0aF0iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBNYXRoOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIltvYmplY3QgTWF0aF0iLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBBcnJheSgxLDIsMyw0LDUpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIjEsMiwzLDQsNSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIjEsMiwzLDQsNSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A3_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImZhbHNlIikgewogICRFUlJPUignIzM6IHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiZmFsc2UiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyByZWdleHAgL2wvLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IC9sLzsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDMpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMy4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsyXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsgX19zcGxpdFsyXSA9PT0gIm8iLiBBY3R1YWw6ICcrX19zcGxpdFsyXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgbmV3IFJlZ0V4cCwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSBuZXcgUmVnRXhwOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyJoIiwiZSIsImwiLCJsIiwibyJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyMzLicraW5kZXgrJzogX19zcGxpdFsnK2luZGV4KyddID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAwLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDApOwoKdmFyIF9fZXhwZWN0ZWQgPSBbXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAxLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAyLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDIpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiLCAiZSJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyMzLicraW5kZXgrJzogX19zcGxpdFsnK2luZGV4KyddID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAzLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDMpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiLCAiZSIsICJsIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBpbmRleD0wOyBpbmRleDxfX2V4cGVjdGVkLmxlbmd0aDsgaW5kZXgrKykgewogIGlmIChfX3NwbGl0W2luZGV4XSAhPT0gX19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCA0LCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDQpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiLCAiZSIsICJsIiAsImwiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCB2b2lkIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gbmV3IFJlZ0V4cDsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsKCnZhciBfX2V4cGVjdGVkID0gWyJoIiwgImUiLCAibCIsICJsIiwgIm8iXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCB1bmRlZmluZWQsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gbmV3IFJlZ0V4cDsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsKCnZhciBfX2V4cGVjdGVkID0gWyJoIiwgImUiLCAibCIsICJsIiwgIm8iXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCBcImhpXCIsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gbmV3IFJlZ0V4cDsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgImhpIik7Cgp2YXIgX19leHBlY3RlZCA9IFtdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyMzLicraW5kZXgrJzogX19zcGxpdFsnK2luZGV4KyddID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9cXHMvLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiYSBiIGMgZGUgZlwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiYSBiIGMgZGUgZiIpOwoKdmFyIF9fcmUgPSAvXHMvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyJhIiwiYiIsImMiLCJkZSIsImYiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDApIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMCk7IF9fc3BsaXQubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSByZWdleHAgL1xccy8gYW5kIDMsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJhIGIgYyBkZSBmXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJhIGIgYyBkZSBmIik7Cgp2YXIgX19yZSA9IC9ccy87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7Cgp2YXIgX19leHBlY3RlZCA9IFsiYSIsImIiLCJjIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBpbmRleD0wOyBpbmRleDxfX2V4cGVjdGVkLmxlbmd0aDsgaW5kZXgrKykgewogIGlmIChfX3NwbGl0W2luZGV4XSAhPT0gX19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T20"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9cXFgvLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiYSBiIGMgZGUgZlwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiYSBiIGMgZGUgZiIpOwoKdmFyIF9fcmUgPSAvWC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImEgYiBjIGRlIGYiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T21"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9cXGQrLywgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImRmZTIzaXUgMzQgPSs2NS0tXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJkZmUyM2l1IDM0ID0rNjUtLSIpOwoKdmFyIF9fcmUgPSAvXGQrLzsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSk7Cgp2YXIgX19leHBlY3RlZCA9IFsiZGZlIiwiaXUgIiwiID0rIiwiLS0iXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T22"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIFJlZ0V4cChcJ1xcXFxkK1wnKSwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImRmZTIzaXUgMzQgPSs2NS0tXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJkZmUyM2l1IDM0ID0rNjUtLSIpOwoKdmFyIF9fcmUgPSBuZXcgUmVnRXhwKCdcXGQrJyk7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImRmZSIsIml1ICIsIiA9KyIsIi0tIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBpbmRleD0wOyBpbmRleDxfX2V4cGVjdGVkLmxlbmd0aDsgaW5kZXgrKykgewogIGlmIChfX3NwbGl0W2luZGV4XSAhPT0gX19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T23"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9bYS16XS8sIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJhYmNcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImFiYyIpOwoKdmFyIF9fcmUgPSAvW2Etel0vOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiLCIiLCIiLCIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T24"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgUmVnRXhwKFwnW2Etel1cJyksIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJhYmNcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImFiYyIpOwoKdmFyIF9fcmUgPSBuZXcgUmVnRXhwKCdbYS16XScpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiLCIiLCIiLCIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T25"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDEsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDEpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMSk7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMSk7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDIsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMik7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMik7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDIpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDMsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDMpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDMpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7IF9fc3BsaXQubGVuZ3RoID09PSAzLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDMpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsyXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDMpOyBfX3NwbGl0WzJdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDQsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsNCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDMpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsNCk7IF9fc3BsaXQubGVuZ3RoID09PSAzLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsNCk7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDQpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsyXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDQpOyBfX3NwbGl0WzJdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIHZvaWQgMCwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSAvbC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHZvaWQgMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsgX19zcGxpdC5sZW5ndGggPT09IDMuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHZvaWQgMCk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAibyIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHZvaWQgMCk7IF9fc3BsaXRbMl0gPT09ICJvIi4gQWN0dWFsOiAnK19fc3BsaXRbMl0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIFwiaGlcIiwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSAvbC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsICJoaSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsICJoaSIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLCAiaGkiKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIHVuZGVmaW5lZCwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSAvbC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHVuZGVmaW5lZCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsgX19zcGxpdC5sZW5ndGggPT09IDMuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHVuZGVmaW5lZCk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAibyIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHVuZGVmaW5lZCk7IF9fc3BsaXRbMl0gPT09ICJvIi4gQWN0dWFsOiAnK19fc3BsaXRbMl0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E2IiwKCnBhdGg6ICIxNS41LjQuMTQsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnNwbGl0LnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc3BsaXQucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNwbGl0LnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E3IiwKCnBhdGg6ICIxNS41LjQuMTQsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdCBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9CgogfQp9KTsKCg==","id":"S15.5.4.14_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnNwbGl0LnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc3BsaXQucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnNwbGl0KXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5zcGxpdCl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc3BsaXQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc3BsaXQubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc3BsaXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzE6IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoICE9PSAyKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zdWJzdHJpbmcoZmFsc2UsIHRydWUpICE9PSAidCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKGZhbHNlLCB0cnVlKSA9PT0gInQiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoZmFsc2UsIHRydWUpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3QgYW5kIGZ1bmN0aW9uIGNhbGwsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcsIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB2YWx1ZU9mIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAyO319OwoKdmFyIF9fc3RyID0gIlx1MDAzNUFCQkJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAoc3Vic3RyaW5nKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiBzdWJzdHJpbmcoMCwxKTt9KCkpICE9PSAiQkJCIikgewogICAgICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAyO319OyB2YXIgX19zdHIgPSAiXHUwMDM1QUJCQkFCQUIiOyBzdWJzdHJpbmcoX19vYmosIGZ1bmN0aW9uKCl7cmV0dXJuIHN1YnN0cmluZygwLDEpO30oKSkgPT09ICJCQkIiLiBBY3R1YWw6ICcrc3Vic3RyaW5nKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiBzdWJzdHJpbmcoMCwxKTt9KCkpICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLCBvYmplY3RzIGhhdmUgb3ZlcnJpZGVkIHZhbHVlT2YgZnVuY3Rpb24sIHRoYXQgcmV0dXJuIGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBzdWJzdHJpbmcoX19vYmosX19vYmoyKTsKICAgICAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3Vic3RyaW5nKF9fb2JqLF9fb2JqMikiIGxlYWQgdG8gdGhyb3cgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW5zdGFydCIpIHsKICAgICAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnN0YXJ0Ii4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoIkFCQlx1MDA0MUJBQkFCIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSBzdWJzdHJpbmcoX19vYmosIF9fb2JqMik7CiAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3Vic3RyaW5nKF9fb2JqLF9fb2JqMikiIGxlYWQgdG8gdGhyb3cgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09Imluc3RhcnQiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09Imluc3RhcnQiLiBBY3R1YWw6ICcrZSk7CiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsKdmFyIF9fb2JqMiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgICB2YXIgeCA9ICJBQkJcdTAwNDFCQUJBQlx1MDAzMUJCQUEiLnN1YnN0cmluZyhfX29iaiwgX19vYmoyKTsKICAgICRGQUlMKCcjMTogdmFyIHggPSAiQUJCXFx1MDA0MUJBQkFCXFx1MDAzMUJCQUEiLnN1YnN0cmluZyhfX29iaixfX29iajIpIGxlYWQgdG8gdGhyb3cgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICAgIGlmIChlIT09ImluZW5kIikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5lbmQiLiBBY3R1YWw6ICcrZSk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiVXNlZCBvbmUgYXJndW1lbnQsIHRoYXQgaXMgZnVuY3Rpb24oKXt9KCkuIEluc3RhbmNlIGlzIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoInJlcG9ydCIuc3Vic3RyaW5nKGZ1bmN0aW9uKCl7fSgpKSAhPT0gInJlcG9ydCIpIHsKICAkRVJST1IoJyMxOiAicmVwb3J0Ii5zdWJzdHJpbmcoZnVuY3Rpb24oKXt9KCkpID09PSAicmVwb3J0Ii4gQWN0dWFsOiAnKyJyZXBvcnQiLnN1YnN0cmluZyhmdW5jdGlvbigpe30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzdWJzdHJpbmcgd2l0aG91dCBhcmd1bWVudHMuIEluc3RhbmNlIGlzIE51bWJlciB3aXRoIHByb3RvdHlwZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbnVtID0gMTEuMDAxMDAyOwoKTnVtYmVyLnByb3RvdHlwZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX251bS5zdWJzdHJpbmcoKSE9PSIxMS4wMDEwMDIiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fbnVtID0gMTEuMDAxMDAyOyBOdW1iZXIucHJvdG90eXBlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyBfX251bS5zdWJzdHJpbmcoKT09PSIxMS4wMDEwMDIiLiBBY3R1YWw6ICcrX19udW0uc3Vic3RyaW5nKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZ1bmN0aW9uIGNhbGwgYW5kIHgsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuLiB4IGlzIHVuZGVmaW5lZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyhmdW5jdGlvbigpe3JldHVybiB0cnVlO30oKSx4KSAhPT0gImFsc2UiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKGZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fSgpLHgpID09PSAiYWxzZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLnN1YnN0cmluZyhmdW5jdGlvbigpe3JldHVybiB0cnVlO30oKSx4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwp2YXIgX190b2dnbGUgPSAxOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoc3Vic3RyaW5nKGV2YWwoIlwiMVwiIikse3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gIjB4MDAwNyJ9fSkhPT0ib2JqZWN0IikgewogICRFUlJPUignIzE6IHN1YnN0cmluZyhldmFsKCJcXCIxXFwiIikse3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gIjB4MDAwNyJ9fSk9PT0ib2JqZWN0Ii4gQWN0dWFsOiAnK3N1YnN0cmluZyhldmFsKCJcIjFcIiIpLHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuICIweDAwMDcifX0pKTsKfTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIGZ1bmN0aW9uIGNhbGwsIHRoYXQgcmV0dXJuZWQgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnN1YnN0cmluZyhudWxsLCAtMykgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5zdWJzdHJpbmcobnVsbCwgLTMpID09PSAiIi4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc3Vic3RyaW5nKG51bGwsIC0zKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIEZ1bmN0aW9uKCksIGFuZCBpbnN0YW5jZSBpcyBmdW5jdGlvbiBvYmplY3QsIHRoYXQgaGF2ZSBvdmVycmlkZWQgdmFsdWVPZiBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19mdW5jLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn07CgpGdW5jdGlvbi5wcm90b3R5cGUuc3Vic3RyaW5nPVN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYy5zdWJzdHJpbmcobnVsbCwgRnVuY3Rpb24oKSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19mdW5jLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn07IEZ1bmN0aW9uLnByb3RvdHlwZS5zdWJzdHJpbmc9U3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7IGZ1bmN0aW9uIF9fZnVuYygpe307IF9fZnVuYy5zdWJzdHJpbmcobnVsbCwgRnVuY3Rpb24oKSkgPT09ICIiLiBBY3R1YWw6ICcrX19mdW5jLnN1YnN0cmluZyhudWxsLCBGdW5jdGlvbigpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jKCl7fTsKCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHggYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIG5ldyBTdHJpbmcsIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5zdWJzdHJpbmcoeCwzKSAhPT0gInVuZCIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygidW5kZWZpbmVkIikuc3Vic3RyaW5nKHgsMykgPT09ICJ1bmQiLiBBY3R1YWw6ICcrbmV3IFN0cmluZygidW5kZWZpbmVkIikuc3Vic3RyaW5nKHgsMykgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHN5bWJvbCBhbmQgdW5kZWZpbmVkLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcodm9pZCAwKS5zdWJzdHJpbmcoImUiLHVuZGVmaW5lZCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKHZvaWQgMCkuc3Vic3RyaW5nKCJlIix1bmRlZmluZWQpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnK1N0cmluZyh2b2lkIDApLnN1YnN0cmluZygiZSIsdW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG5lZ2F0aXZlIG51bWJlciBhbmQgdm9pZCAwLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKG9iamVjdCksIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB0b1N0cmluZyBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcoX19vYmopLnN1YnN0cmluZygtNCx2b2lkIDApICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07IFN0cmluZyhfX29iaikuc3Vic3RyaW5nKC00LHZvaWQgMCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICcrU3RyaW5nKF9fb2JqKS5zdWJzdHJpbmcoLTQsdm9pZCAwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHVuZGVmaW5lZCBhbmQgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgbmV3IFN0cmluZyhvYmplY3QpLCBvYmplY3QgaGF2ZSBvdmVycmlkZWQgdmFsdWVPZiBhbmQgdG9TdHJpbmcgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7CiAgICB2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwKICAgIHRvU3RyaW5nOnZvaWQgMAp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAobmV3IFN0cmluZyhfX29iaikuc3Vic3RyaW5nKC8qKGZ1bmN0aW9uKCl7fSkoKSovdW5kZWZpbmVkLHVuZGVmaW5lZCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IG5ldyBTdHJpbmcoX19vYmopLnN1YnN0cmluZygvKihmdW5jdGlvbigpe30pKCkqL3VuZGVmaW5lZCx1bmRlZmluZWQpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnK25ldyBTdHJpbmcoX19vYmopLnN1YnN0cmluZygvKihmdW5jdGlvbigpe30pKCkqL3VuZGVmaW5lZCx1bmRlZmluZWQpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyB0eXBlIG9mIHN1YnN0cmluZygpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyaW5nLnN1YnN0cmluZygpICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgdHlwZW9mIF9fc3RyaW5nLnN1YnN0cmluZygpID09PSAic3RyaW5nIi4gQWN0dWFsOiAnK3R5cGVvZiBfX3N0cmluZy5zdWJzdHJpbmcoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAic3RhcnQgaXMgMCwgZW5kIGlzIDgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXNfaXNfYV9zdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zdWJzdHJpbmcoMCw4KSAhPT0gInRoaXNfaXNfIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpc19pc19hX3N0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKDAsOCkgPT09ICJ0aGlzX2lzXyIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoMCw4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBOYU4sIGVuZCBpcyBJbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygndGhpcyBpcyBhIHN0cmluZyBvYmplY3QnKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnN1YnN0cmluZyhOYU4sIEluZmluaXR5KSAhPT0gInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZyhcJ3RoaXMgaXMgYSBzdHJpbmcgb2JqZWN0XCcpOyBfX3N0cmluZy5zdWJzdHJpbmcoTmFOLCBJbmZpbml0eSkgPT09ICJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoTmFOLCBJbmZpbml0eSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDYWxsIHN1YnN0cmluZyBmcm9tIGVtcHR5IFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKDEsMCkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCIiKTsgX19zdHJpbmcuc3Vic3RyaW5nKDEsMCkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc3Vic3RyaW5nKDEsMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIE5hTiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnN1YnN0cmluZyhJbmZpbml0eSwgTmFOKSAhPT0gInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pID09PSAidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiLiBBY3R1YWw6ICcrX19zdHJpbmcuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIEluZmluaXR5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKEluZmluaXR5LCBJbmZpbml0eSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOyBfX3N0cmluZy5zdWJzdHJpbmcoSW5maW5pdHksIEluZmluaXR5KSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoSW5maW5pdHksIEluZmluaXR5KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBuZWdhdGl2ZSBmbG9hdCBudW1iZXIsIGVuZCBpcyAwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKC0wLjAxLDApICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKC0wLjAxLDApID09PSAiIi4gQWN0dWFsOiAnK19fc3RyaW5nLnN1YnN0cmluZygtMC4wMSwwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCwgZW5kIGlzIHRlc3RlZF9zdHJpbmcubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKF9fc3RyaW5nLmxlbmd0aCwgX19zdHJpbmcubGVuZ3RoKSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnN1YnN0cmluZyhfX3N0cmluZy5sZW5ndGgsIF9fc3RyaW5nLmxlbmd0aCkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc3Vic3RyaW5nKF9fc3RyaW5nLmxlbmd0aCwgX19zdHJpbmcubGVuZ3RoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCsxLCBlbmQgaXMgMCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnN1YnN0cmluZyhfX3N0cmluZy5sZW5ndGgrMSwgMCkgIT09ICJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnN1YnN0cmluZyhfX3N0cmluZy5sZW5ndGgrMSwgMCkgPT09ICJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoX19zdHJpbmcubGVuZ3RoKzEsIDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyAtSW5maW5pdHksIGVuZCBpcyAtSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zdWJzdHJpbmcoLUluZmluaXR5LCAtSW5maW5pdHkpICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKC1JbmZpbml0eSwgLUluZmluaXR5KSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoLUluZmluaXR5LCAtSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgSW5maW5pdHksIGVuZCBpcyAtSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEFycmF5KDEsMiwzLDQsNSk7IApfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zdWJzdHJpbmcoSW5maW5pdHksLUluZmluaXR5KSAhPT0gIjEsMiwzLDQsNSIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEFycmF5KDEsMiwzLDQsNSk7IF9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7IF9faW5zdGFuY2Uuc3Vic3RyaW5nKEluZmluaXR5LC1JbmZpbml0eSkgPT09ICIxLDIsMyw0LDUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoSW5maW5pdHksLUluZmluaXR5KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tuaWcgaWYgYXBwbHlpbmcgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcgdG8gRnVuY3Rpb24gb2JqZWN0IGluc3RhbmNlIHBhc3NlcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19GQUNUT1JZLnByb3RvdHlwZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSh2b2lkIDApOwogCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc3Vic3RyaW5nKDAsIDEwMCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZS5zdWJzdHJpbmcoMCwgMTAwKSA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogJytfX2luc3RhbmNlLnN1YnN0cmluZygwLCAxMDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX0ZBQ1RPUlkoIHZhbHVlICkgewogICAgdGhpcy52YWx1ZSA9IHZhbHVlOwogICAgdGhpcy50b1N0cmluZyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gdGhpcy52YWx1ZSsnJzsgfQp9CgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXBwbHkgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcgdG8gQm9vbGVhbiBpbnN0YW5jZS4gU3RhcnQgaXMgbmV3IEFycmF5KCksIGVuZCBpcyBuZXcgQm9vbGVhbigxKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbigpOwogCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyhuZXcgQXJyYXkoKSwgbmV3IEJvb2xlYW4oMSkpICE9PSAiZiIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW4oKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKG5ldyBBcnJheSgpLCBuZXcgQm9vbGVhbigxKSkgPT09ICJmIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKG5ldyBBcnJheSgpLCBuZXcgQm9vbGVhbigxKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A3_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgOSwgZW5kIGlzIC1JbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyg5LC1JbmZpbml0eSkgIT09ICIxLDIsMyw0LDUiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyBfX2luc3RhbmNlLnN1YnN0cmluZyg5LC1JbmZpbml0eSkgPT09ICIxLDIsMyw0LDUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoOSwtSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgdHJ1ZSwgZW5kIGlzIGZhbHNlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyAKX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc3Vic3RyaW5nKHRydWUsIGZhbHNlKSAhPT0gIjEiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyBfX2luc3RhbmNlLnN1YnN0cmluZyh0cnVlLCBmYWxzZSkgPT09ICIxIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKHRydWUsIGZhbHNlKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgXCc0XCcsIGVuZCBpcyBcJzVcJyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZygnNCcsICc1JykgIT09ICIzIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgX19pbnN0YW5jZS5zdWJzdHJpbmcoXCc0XCcsIFwnNVwnKSA9PT0gIjMiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoJzQnLCAnNScpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBPYmplY3QgaW5zdGFuY2UuIFN0YXJ0IGlzIDgsIGVuZCBpcyAwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyg4LDApICE9PSAiW29iamVjdCAiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgX19pbnN0YW5jZS5zdWJzdHJpbmcoOCwwKSA9PT0gIltvYmplY3QgIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKDgsMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A3_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBPYmplY3QgaW5zdGFuY2UuIFN0YXJ0IGlzIDgsIGVuZCBpcyBsZW5ndGggb2Ygb2JqZWN0LnRvU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyg4LCBfX2luc3RhbmNlLnRvU3RyaW5nKCkubGVuZ3RoKSAhPT0gIk9iamVjdF0iKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgX19pbnN0YW5jZS5zdWJzdHJpbmcoOCwgX19pbnN0YW5jZS50b1N0cmluZygpLmxlbmd0aCkgPT09ICJPYmplY3RdIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKDgsIF9faW5zdGFuY2UudG9TdHJpbmcoKS5sZW5ndGgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBPYmplY3QgaW5zdGFuY2UuIENhbGwgaW5zdGFuY2Uuc3Vic3RyaW5nKC4uLikuc3Vic3RyaW5nKC4uLikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OwogCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZygtSW5maW5pdHksOCkgIT09ICJmdW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OyBfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyAgX19pbnN0YW5jZS5zdWJzdHJpbmcoLUluZmluaXR5LDgpID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoOCxJbmZpbml0eSkuc3Vic3RyaW5nKC1JbmZpbml0eSwxKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A3_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBOdW1iZXIgaW5zdGFuY2UuIFN0YXJ0IGlzIEluZmluaXR5LCBlbmQgaXMgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsKIApfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zdWJzdHJpbmcoSW5maW5pdHksIE5hTikgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pID09PSAiTmFOIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBNYXRoIGluc3RhbmNlLiBTdGFydCBpcyBNYXRoLlBJLCBlbmQgaXMgLTEwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IE1hdGg7CiAKX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc3Vic3RyaW5nKE1hdGguUEksIC0xMCkgIT09ICJbb2IiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IE1hdGg7IF9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7ICBfX2luc3RhbmNlLnN1YnN0cmluZyhNYXRoLlBJLCAtMTApID09PSAiW29iIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKE1hdGguUEksIC0xMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A3_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E2IiwKCnBhdGg6ICIxNS41LjQuMTUsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5wcm90b3R5cGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5wcm90b3R5cGUgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E3IiwKCnBhdGg6ICIxNS41LjQuMTUsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcgb2JqZWN0IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IHVuZGVmaW5lZCA9IDEgdGhyb3cgYSBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7ICAKICB9CiAgJFBSSU5UKGUpOwp9CgogfQp9KTsKCg==","id":"S15.5.4.15_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAodmFyIHAgaW4gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcpewogIGlmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7Cn0KCmlmIChjb3VudCAhPT0gMCkgewogICRFUlJPUignIzI6IGNvdW50PTA7IGZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9IGNvdW50ID09PSAwLiBBY3R1YWw6ICcrY291bnQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG93ZXJDYXNlKCkgIT09ICJ0cnVlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb3dlckNhc2UoKSA9PT0gInRydWUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvd2VyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319Cl9fb2JqLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b0xvd2VyQ2FzZSgpICE9PSJhYiIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OyBfX29iai50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IF9fb2JqLnRvTG93ZXJDYXNlKCkgPT09ImFiIi4gQWN0dWFsOiAnK19fb2JqLnRvTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9Mb3dlckNhc2UoKTsKICAgCSRGQUlMKCcjMTogInZhciB4ID0gX19vYmoudG9Mb3dlckNhc2UoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKICB2YXIgeCA9IF9fb2JqLnRvTG93ZXJDYXNlKCk7CiAJJEZBSUwoJyMxOiAidmFyIHggPSBfX29iai50b0xvd2VyQ2FzZSgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9Mb3dlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b0xvd2VyQ2FzZSgpICE9PSIxIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsgX19vYmoudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOyBfX29iai50b0xvd2VyQ2FzZSgpID09PSIxIi4gQWN0dWFsOiAnK19fb2JqLnRvTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnRvTG93ZXJDYXNlKCkubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IF9fb2JqLnRvTG93ZXJDYXNlKCkubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19vYmoudG9Mb3dlckNhc2UoKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvd2VyQ2FzZSgpIGZ1bmN0aW9uIGZvciBSZWdFeHAgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJBQkMiKTsKX19yZWcudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19yZWcudG9Mb3dlckNhc2UoKSAhPT0gIi9hYmMvIikgewogICRFUlJPUignIzE6IHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIkFCQyIpOyBfX3JlZy50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IF9fcmVnLnRvTG93ZXJDYXNlKCkgPT09ICIvYWJjLyIuIEFjdHVhbDogJytfX3JlZy50b0xvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG93ZXJDYXNlKCkgIT09ICJmYWxzZSIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOyAgX19pbnN0YW5jZS50b0xvd2VyQ2FzZSgpID09PSAiZmFsc2UiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcIkJKXCIiKS50b0xvd2VyQ2FzZSgpICE9PSAiYmoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiQkpcXCIiKS50b0xvd2VyQ2FzZSgpID09PSAiYmoiLiBBY3R1YWw6ICcrZXZhbCgiXCJCSlwiIikudG9Mb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsKCnZhciBfX2V4cGVjdGVkID0gIiI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2xvd2VyQ2FzZVswXSE9PV9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyM0OiBfX2xvd2VyQ2FzZSA9ICIiLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSAiIjsgX19sb3dlckNhc2VbMF09PT0nK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIGZ1bmN0aW9uIGNhbGwiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIG1hdGNoKG51bGwpIGV2YWx1YXRlcyB0byBtYXRjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG93ZXJDYXNlKCkgIT09ICJnbnVsbHVuYSIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG93ZXJDYXNlKCkgPT09ICJnbnVsbHVuYSIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG93ZXJDYXNlKCkgIT09ICItaW5maW5pdHkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG93ZXJDYXNlKCkgPT09ICItaW5maW5pdHkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9Mb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b0xvd2VyQ2FzZSgpIT09ICJuYW4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IE5hTi50b0xvd2VyQ2FzZSgpPT09ICJuYW4iLiBBY3R1YWw6ICcrTmFOLnRvTG93ZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvTG93ZXJDYXNlKCkhPT0gImluZmluaXR5IikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOyBJbmZpbml0eS50b0xvd2VyQ2FzZSgpPT09ICJpbmZpbml0eSIuIEFjdHVhbDogJytJbmZpbml0eS50b0xvd2VyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7Cgp2YXIgX19leHBlY3RlZCA9InVuZGVmaW5lZCI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19sb3dlckNhc2VbaW5kZXhdIT09X19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzQuJytpbmRleCsnOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2VbJytpbmRleCsnXT09PScrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b0xvd2VyQ2FzZSgpICE9PSAiaGVsbG8sIHdvcmxkISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9Mb3dlckNhc2UoKSA9PT0gImhlbGxvLCB3b3JsZCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgIT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgPT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgPT09bmV3IFN0cmluZygiaGVsbG8sIHdvcmxkISIpKSB7CiAgJEVSUk9SKCcjMzogIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgIT09IG5ldyBTdHJpbmcoImhlbGxvLCB3b3JsZCEiKScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E2IiwKCnBhdGg6ICIxNS41LjQuMTYsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E3IiwKCnBhdGg6ICIxNS41LjQuMTYsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4xOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiB0aHJvd3MgYSBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7ICAKICB9Cn07CgoKIH0KfSk7Cgo=","id":"S15.5.4.16_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E4IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E5IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCAhPT0gX19vYmopIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCA9PT0gX19vYmouIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ICJ0cnVlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0gInRydWUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvY2FsZUxvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZUxvd2VyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319Cl9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ImFiIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxQiI7fX07IF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0iYWIiLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKTsKICAgCSRGQUlMKCcjMTogInZhciB4ID0gX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKICB2YXIgeCA9IF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCk7CiAJJEZBSUwoJyMxOiAidmFyIHggPSBfX29iai50b0xvY2FsZUxvd2VyQ2FzZSgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9Mb2NhbGVMb3dlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSIxIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsgX19vYmoudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOyBfX29iai50b0xvY2FsZUxvd2VyQ2FzZSgpID09PSIxIi4gQWN0dWFsOiAnK19fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZUxvd2VyQ2FzZSgpIGZ1bmN0aW9uIGZvciBSZWdFeHAgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJBQkMiKTsKX19yZWcudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19yZWcudG9Mb2NhbGVMb3dlckNhc2UoKSAhPT0gIi9hYmMvIikgewogICRFUlJPUignIzE6IHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIkFCQyIpOyBfX3JlZy50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IF9fcmVnLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09ICIvYWJjLyIuIEFjdHVhbDogJytfX3JlZy50b0xvY2FsZUxvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSAiZmFsc2UiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0gImZhbHNlIi4gQWN0dWFsOiAnK19faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcIkJKXCIiKS50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSAiYmoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiQkpcXCIiKS50b0xvY2FsZUxvd2VyQ2FzZSgpID09PSAiYmoiLiBBY3R1YWw6ICcrZXZhbCgiXCJCSlwiIikudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsKCnZhciBfX2V4cGVjdGVkID0gIiI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2xvd2VyQ2FzZVswXSE9PV9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyM0OiBfX2xvd2VyQ2FzZSA9ICIiLnRvTG9jYWxlTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSAiIjsgX19sb3dlckNhc2VbMF09PT1fX2V4cGVjdGVkWzBdLiBBY3R1YWw6ICcrX19sb3dlckNhc2VbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIGZ1bmN0aW9uIGNhbGwiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIG1hdGNoKG51bGwpIGV2YWx1YXRlcyB0byBtYXRjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ICJnbnVsbHVuYSIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09ICJnbnVsbHVuYSIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG9jYWxlTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ICItaW5maW5pdHkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09ICItaW5maW5pdHkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b0xvY2FsZUxvd2VyQ2FzZSgpIT09ICJuYW4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IE5hTi50b0xvY2FsZUxvd2VyQ2FzZSgpPT09ICJuYW4iLiBBY3R1YWw6ICcrTmFOLnRvTG9jYWxlTG93ZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvTG9jYWxlTG93ZXJDYXNlKCkhPT0gImluZmluaXR5IikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOyBJbmZpbml0eS50b0xvY2FsZUxvd2VyQ2FzZSgpPT09ICJpbmZpbml0eSIuIEFjdHVhbDogJytJbmZpbml0eS50b0xvY2FsZUxvd2VyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlTG93ZXJDYXNlKCk7CgoKdmFyIF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbG93ZXJDYXNlLmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZUxvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2UubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19sb3dlckNhc2UuaW5kZXggIT09IF9fZXhwZWN0ZWQuaW5kZXgpIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZUxvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2UuaW5kZXggPT09IF9fZXhwZWN0ZWQuaW5kZXguIEFjdHVhbDogJytfX2xvd2VyQ2FzZS5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19sb3dlckNhc2UuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZUxvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2UuaW5wdXQgPT09IF9fZXhwZWN0ZWQuaW5wdXQuIEFjdHVhbDogJytfX2xvd2VyQ2FzZS5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbG93ZXJDYXNlW2luZGV4XSE9PV9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyM0LicraW5kZXgrJzogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fbG93ZXJDYXNlID0gbmV3IFN0cmluZyhfX29iaikudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9InVuZGVmaW5lZCI7IF9fbG93ZXJDYXNlWycraW5kZXgrJ109PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19sb3dlckNhc2VbaW5kZXhdKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSAiaGVsbG8sIHdvcmxkISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0gImhlbGxvLCB3b3JsZCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09IG5ldyBTdHJpbmcoImhlbGxvLCB3b3JsZCEiKSkgewogICRFUlJPUignIzM6ICJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSBuZXcgU3RyaW5nKCJoZWxsbywgd29ybGQhIiknKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E2IiwKCnBhdGg6ICIxNS41LjQuMTcsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E3IiwKCnBhdGg6ICIxNS41LjQuMTcsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4xOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgInZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSIgdGhyb3cgYSBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7ICAKICB9CiAgJFBSSU5UKGUpOwp9CgogfQp9KTsKCg==","id":"S15.5.4.17_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E4IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAodmFyIHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2Upe2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E5IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvVXBwZXJDYXNlKCkgIT09ICJUUlVFIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9VcHBlckNhc2UoKSA9PT0gIlRSVUUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b1VwcGVyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.18_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b1VwcGVyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MWIiO319Cl9fb2JqLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvVXBwZXJDYXNlKCkgIT09IkFCIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxYiI7fX07IF9fb2JqLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgX19vYmoudG9VcHBlckNhc2UoKSA9PT0iQUIiLiBBY3R1YWw6ICcrX19vYmoudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX29iai50b1VwcGVyQ2FzZSgpOwogICAJJEZBSUwoJyMxOiAidmFyIHggPSBfX29iai50b1VwcGVyQ2FzZSgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.18_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9VcHBlckNhc2UoKTsKIAkkRkFJTCgnIzE6ICJ2YXIgeCA9IF9fb2JqLnRvVXBwZXJDYXNlKCkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9VcHBlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b1VwcGVyQ2FzZSgpICE9PSIxIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsgX19vYmoudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOyBfX29iai50b1VwcGVyQ2FzZSgpID09PSIxIi4gQWN0dWFsOiAnK19fb2JqLnRvVXBwZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnRvVXBwZXJDYXNlKCkubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7IF9fb2JqLnRvVXBwZXJDYXNlKCkubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19vYmoudG9VcHBlckNhc2UoKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b1VwcGVyQ2FzZSgpIGZ1bmN0aW9uIG9mIFJlZ0V4cCBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoImFiYyIpOwpfX3JlZy50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fcmVnLnRvVXBwZXJDYXNlKCkgIT09ICIvQUJDLyIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJhYmMiKTsgX19yZWcudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOyBfX3JlZy50b1VwcGVyQ2FzZSgpID09PSAiL0FCQy8iLiBBY3R1YWw6ICcrX19yZWcudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS50b1VwcGVyQ2FzZSgpICE9PSAiRkFMU0UiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9VcHBlckNhc2UoKSA9PT0gIkZBTFNFIi4gQWN0dWFsOiAnK19faW5zdGFuY2UudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcImJqXCIiKS50b1VwcGVyQ2FzZSgpICE9PSAiQkoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiYmpcXCIiKS50b1VwcGVyQ2FzZSgpID09PSAiQkoiLiBBY3R1YWw6ICcrZXZhbCgiXCJialwiIikudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsKCnZhciBfX2V4cGVjdGVkID0gIiI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2xvd2VyQ2FzZVswXSE9PV9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyM0OiBfX2xvd2VyQ2FzZSA9ICIiLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSAiIjsgX19sb3dlckNhc2VbMF09PT0nK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgZnVuY3Rpb24gY2FsbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKG51bGwpIGV2YWx1YXRlcyB0byAibnVsbCIgbWF0Y2gobnVsbCkgZXZhbHVhdGVzIHRvIG1hdGNoKCJudWxsIikKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9VcHBlckNhc2UoKSAhPT0gIkdOVUxMVU5BIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9VcHBlckNhc2UoKSA9PT0gIkdOVUxMVU5BIi4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvVXBwZXJDYXNlKCkgIT09ICItSU5GSU5JVFkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvVXBwZXJDYXNlKCkgPT09ICItSU5GSU5JVFkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b1VwcGVyQ2FzZSgpIT09ICJOQU4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7IE5hTi50b1VwcGVyQ2FzZSgpPT09ICJOQU4iLiBBY3R1YWw6ICcrTmFOLnRvVXBwZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvVXBwZXJDYXNlKCkhPT0gIklORklOSVRZIikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOyBJbmZpbml0eS50b1VwcGVyQ2FzZSgpPT09ICJJTkZJTklUWSIuIEFjdHVhbDogJytJbmZpbml0eS50b1VwcGVyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7Cgp2YXIgX19leHBlY3RlZCA9IlVOREVGSU5FRCI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX191cHBlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX3VwcGVyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX191cHBlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3VwcGVyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX3VwcGVyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fdXBwZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3VwcGVyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX3VwcGVyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fdXBwZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX191cHBlckNhc2VbaW5kZXhdIT09X19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzQuJytpbmRleCsnOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX191cHBlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b1VwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0iVU5ERUZJTkVEIjsgX191cHBlckNhc2VbJytpbmRleCsnXT09PScrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fdXBwZXJDYXNlW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b1VwcGVyQ2FzZSgpICE9PSAiSEVMTE8sIFdPUkxEISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9VcHBlckNhc2UoKSA9PT0gIkhFTExPLCBXT1JMRCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b1VwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgIT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgPT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b1VwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgPT09bmV3IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMzogIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgIT09IG5ldyBTdHJpbmcoIkhFTExPLCBXT1JMRCEiKScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E2IiwKCnBhdGg6ICIxNS41LjQuMTgsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E3IiwKCnBhdGg6ICIxNS41LjQuMTgsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4xOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiB0aHJvdyBhIFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KfQoKIH0KfSk7Cgo=","id":"S15.5.4.18_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E4IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.18_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E5IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09ICJUUlVFIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIlRSVUUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvY2FsZVVwcGVyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.19_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZVVwcGVyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MWIiO319Cl9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IkFCIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxYiI7fX07IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0iQUIiLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX29iai50b0xvY2FsZVVwcGVyQ2FzZSgpOwogICRGQUlMKCcjMTogInZhciB4ID0gX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKTsKIAkkRkFJTCgnIzE6ICJ2YXIgeCA9IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9Mb2NhbGVVcHBlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IjEiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09IjEiLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKS5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKS5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX29iai50b0xvY2FsZVVwcGVyQ2FzZSgpLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZVVwcGVyQ2FzZSgpIGZ1bmN0aW9uIGZvciBSZWdFeHAgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJhYmMiKTsKX19yZWcudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3JlZy50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiL0FCQy8iKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fcmVnID0gbmV3IFJlZ0V4cCgiYWJjIik7IF9fcmVnLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgX19yZWcudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIi9BQkMvIi4gQWN0dWFsOiAnK19fcmVnLnRvTG9jYWxlVXBwZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiRkFMU0UiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIkZBTFNFIi4gQWN0dWFsOiAnK19faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcImJqXCIiKS50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiQkoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiYmpcXCIiKS50b0xvY2FsZVVwcGVyQ2FzZSgpID09PSAiQkoiLiBBY3R1YWw6ICcrZXZhbCgiXCJialwiIikudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVVcHBlckNhc2UoKTsKdmFyIF9fZXhwZWN0ZWQgPSAiIjsgCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2xvd2VyQ2FzZS5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19sb3dlckNhc2UgPSAiIi50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0gIiI7IF9fbG93ZXJDYXNlLmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX2xvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbG93ZXJDYXNlLmluZGV4ICE9PSBfX2V4cGVjdGVkLmluZGV4KSB7CiAgJEVSUk9SKCcjMjogX19sb3dlckNhc2UgPSAiIi50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0gIiI7IF9fbG93ZXJDYXNlLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19sb3dlckNhc2UuaW5kZXggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fbG93ZXJDYXNlLmlucHV0ICE9PSBfX2V4cGVjdGVkLmlucHV0KSB7CiAgJEVSUk9SKCcjMzogX19sb3dlckNhc2UgPSAiIi50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0gIiI7IF9fbG93ZXJDYXNlLmlucHV0ID09PSBfX2V4cGVjdGVkLmlucHV0LiBBY3R1YWw6ICcrX19sb3dlckNhc2UuaW5wdXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fbG93ZXJDYXNlWzBdIT09X19leHBlY3RlZFswXSkgewogICRFUlJPUignIzQ6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVVcHBlckNhc2UoKTsgX19sb3dlckNhc2VbMF09PT0nK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgZnVuY3Rpb24gY2FsbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKG51bGwpIGV2YWx1YXRlcyB0byAibnVsbCIgbWF0Y2gobnVsbCkgZXZhbHVhdGVzIHRvIG1hdGNoKCJudWxsIikKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9Mb2NhbGVVcHBlckNhc2UoKSAhPT0gIkdOVUxMVU5BIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIkdOVUxMVU5BIi4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09ICItSU5GSU5JVFkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09ICItSU5GSU5JVFkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b0xvY2FsZVVwcGVyQ2FzZSgpIT09ICJOQU4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7IE5hTi50b0xvY2FsZVVwcGVyQ2FzZSgpPT09ICJOQU4iLiBBY3R1YWw6ICcrTmFOLnRvTG9jYWxlVXBwZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvTG9jYWxlVXBwZXJDYXNlKCkhPT0gIklORklOSVRZIikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOyBJbmZpbml0eS50b0xvY2FsZVVwcGVyQ2FzZSgpPT09ICJJTkZJTklUWSIuIEFjdHVhbDogJytJbmZpbml0eS50b0xvY2FsZVVwcGVyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7Cgp2YXIgX19leHBlY3RlZCA9IlVOREVGSU5FRCI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19sb3dlckNhc2VbaW5kZXhdIT09X19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzQuJytpbmRleCsnOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0iVU5ERUZJTkVEIjsgX19sb3dlckNhc2VbJytpbmRleCsnXT09PScrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiSEVMTE8sIFdPUkxEISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIkhFTExPLCBXT1JMRCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZVVwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZVVwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09bmV3IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMzogIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IG5ldyBTdHJpbmcoIkhFTExPLCBXT1JMRCEiJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.19_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E2IiwKCnBhdGg6ICIxNS41LjQuMTksIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E3IiwKCnBhdGg6ICIxNS41LjQuMTksIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjE6ICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7ICBPYmplY3QgaGFzIG5vIGNvbnN0cnVjdCBsZWFkICBhIFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KfQoKIH0KfSk7Cgo=","id":"S15.5.4.19_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E4IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAodmFyIHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2Upe2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E5IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTEuMSIsCgpwYXRoOiAiMTUuNS40LjQsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt0aGlzLnRvU3RyaW5nID0gZnVuY3Rpb24oKXsgcmV0dXJuICJ3aXphcmQiO307fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CgpfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICBpZiAoX19pbnN0YW5jZS5jaGFyQXQoZXZhbCgiMSIpLHRydWUsbnVsbCx7fSkhPT0gImkiKSB7CiAgICAkRVJST1IoJyMxOiBfX2luc3RhbmNlLmNoYXJBdChldmFsKCIxIiksdHJ1ZSxudWxsLHt9KT09PSAiaSIuIEFjdHVhbDogJytfX2luc3RhbmNlLmNoYXJBdChldmFsKCIxIiksdHJ1ZSxudWxsLHt9KSk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.4_A1.1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTEwIiwKCnBhdGg6ICIxNS41LjQuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTExIiwKCnBhdGg6ICIxNS41LjQuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoNDIpOwoKX19pbnN0YW5jZS5jaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UuY2hhckF0KGZhbHNlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKSAhPT0gIjQyIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsgX19pbnN0YW5jZS5jaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsgX19pbnN0YW5jZS5jaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgX19pbnN0YW5jZS5jaGFyQXQoZmFsc2UpK19faW5zdGFuY2UuY2hhckF0KHRydWUpID09PSAiNDIiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5jaGFyQXQoZmFsc2UpK19faW5zdGFuY2UuY2hhckF0KHRydWUpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNCIsCgpkZXNjcmlwdGlvbjogIkNhbGwgY2hhckF0KCkgZnVuY3Rpb24gd2l0aCBvYmplY3QgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAxO319CnZhciBfX3N0ciA9ICJsZWdvIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgaWYgKGNoYXJBdChfX29iaikgIT09ICJlIikgewogICAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07IHZhciBfX3N0ciA9ICJsZWdvIjsgY2hhckF0KF9fb2JqKSA9PT0gImUiLiBBY3R1YWw6IGNoYXJBdChfX29iaikgPT09JytjaGFyQXQoX19vYmopICk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGVxdWF0aW9uIHdpdGggZmFsc2UgYW5kIHRydWUsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmNoYXJBdChmYWxzZSkrX19pbnN0YW5jZS5jaGFyQXQodHJ1ZSkrX19pbnN0YW5jZS5jaGFyQXQodHJ1ZSsxKSAhPT0gImZhbCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7ICBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7IF9faW5zdGFuY2UuY2hhckF0KGZhbHNlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKzEpID09PSAiZmFsIi4gQWN0dWFsOiAnK19faW5zdGFuY2UuY2hhckF0KGZhbHNlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKzEpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiVXNlIG51bWJlcnMgYW5kIHN0cmluZ3MgYXMgcG9zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB2YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGNoYXJBdCgiMSIpICsgY2hhckF0KDIpICsgY2hhckF0KCIzIikgKyBjaGFyQXQoNCkgKyBjaGFyQXQoIjUiKSArIGNoYXJBdCg2KSAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBjaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgY2hhckF0KCIxIikgKyBjaGFyQXQoMikgKyBjaGFyQXQoIjMiKSArIGNoYXJBdCg0KSArIGNoYXJBdCgiNSIpICsgY2hhckF0KDYpID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK2NoYXJBdCgiMSIpICsgY2hhckF0KDIpICsgY2hhckF0KCIzIikgKyBjaGFyQXQoNCkgKyBjaGFyQXQoIjUiKSArIGNoYXJBdCg2KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRob3V0IGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb0ludGVnZXIoKSBldmFsdWF0ZXMgdG8gMCBjaGFyQXQoKSBldmFsdWF0ZXMgdG8gY2hhckF0KDApCmlmICgibGVnbyIuY2hhckF0KCkgIT09ICJsIikgewogICRFUlJPUignIzE6ICJsZWdvIi5jaGFyQXQoKSA9PT0gImwiLiBBY3R1YWw6ICJsZWdvIi5jaGFyQXQoKSA9PT0nKygibGVnbyIuY2hhckF0KCkpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIG51bGwgYXJndW1lbnQgb2YgZnVuY3Rpb24gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKG51bGwpIGV2YWx1YXRlcyB0byAwIGNoYXJBdCgpIGV2YWx1YXRlcyB0byBjaGFyQXQoMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jaGFyQXQobnVsbCkgIT09ICJsIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jaGFyQXQobnVsbCkgPT09ICJsIi4gQWN0dWFsOiBmdW5jdGlvbigpe3JldHVybiAibGVnbyJ9KCkuY2hhckF0KG51bGwpID09PScrZnVuY3Rpb24oKXtyZXR1cm4gImxlZ28ifSgpLmNoYXJBdChudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIHggYXJndW1lbnQgb2YgbmV3IFN0cmluZyBvYmplY3QsIHdoZXJlIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIDAgY2hhckF0KCkgZXZhbHVhdGVzIHRvIGNoYXJBdCgwKQppZiAobmV3IFN0cmluZygibGVnbyIpLmNoYXJBdCh4KSAhPT0gImwiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoImxlZ28iKS5jaGFyQXQoeCkgPT09ICJsIi4gQWN0dWFsOiBuZXcgU3RyaW5nKCJsZWdvIikuY2hhckF0KHgpID09PScrbmV3IFN0cmluZygibGVnbyIpLmNoYXJBdCh4KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDciLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIHVuZGVmaW5lZCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIDAgY2hhckF0KCkgZXZhbHVhdGVzIHRvIGNoYXJBdCgwKQppZiAoU3RyaW5nKCJsZWdvIikuY2hhckF0KHVuZGVmaW5lZCkgIT09ICJsIikgewogICRFUlJPUignIzE6IFN0cmluZygibGVnbyIpLmNoYXJBdCh1bmRlZmluZWQpID09PSAibCIuIEFjdHVhbDogU3RyaW5nKCJsZWdvIikuY2hhckF0KHVuZGVmaW5lZCkgPT09JytTdHJpbmcoImxlZ28iKS5jaGFyQXQodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIHZvaWQgMCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHZvaWQgMCkgZXZhbHVhdGVzIHRvIDAgY2hhckF0KCkgZXZhbHVhdGVzIHRvIGNoYXJBdCgwKQppZiAoU3RyaW5nKDQyKS5jaGFyQXQodm9pZCAwKSAhPT0gIjQiKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKDQyKS5jaGFyQXQodm9pZCAwKSA9PT0gIjQiLiBBY3R1YWw6IFN0cmluZyg0MikuY2hhckF0KHZvaWQgMCkgPT09JytTdHJpbmcoNDIpLmNoYXJBdCh2b2lkIDApICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIGZ1bmN0aW9uKCl7fSgpIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb0ludGVnZXIodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gMCBjaGFyQXQoKSBldmFsdWF0ZXMgdG8gY2hhckF0KDApCmlmIChuZXcgU3RyaW5nKDQyKS5jaGFyQXQoZnVuY3Rpb24oKXt9KCkpICE9PSAiNCIpIHsKICAkRVJST1IoJyMxOiBuZXcgU3RyaW5nKDQyKS5jaGFyQXQoZnVuY3Rpb24oKXt9KCkpID09PSAiNCIuIEFjdHVhbDogbmV3IFN0cmluZyg0MikuY2hhckF0KGZ1bmN0aW9uKCl7fSgpKSA9PT0nK25ldyBTdHJpbmcoNDIpLmNoYXJBdChmdW5jdGlvbigpe30oKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTIiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQocG9zKSB3aXRoIG5lZ2F0aXZlIHBvcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19GQUNUT1JZKCl7fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmNoYXJBdCgtMSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZS5jaGFyQXQoLTEpID09PSAiIi4gQWN0dWFsOiBfX2luc3RhbmNlLmNoYXJBdCgtMSkgPT09JytfX2luc3RhbmNlLmNoYXJBdCgtMSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTMiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGJpZ2dlciBvZiBzdHJpbmcgbGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jaGFyQXQoMykgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQyIpOyBfX2luc3RhbmNlLmNoYXJBdCgzKSA9PT0gIiIuIEFjdHVhbDogX19pbnN0YW5jZS5jaGFyQXQoMykgPT09JytfX2luc3RhbmNlLmNoYXJBdCgzKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ29tcGFyZSByZXN1bHRzIG9mIHguY2hhckF0KHBvcykgYW5kIHguc3Vic3RyaW5nKHBvcywgcG9zKzEpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvcih2YXIgaT0wOyBpPDY7IGkrKykgewogIGlmICgiQUJDXHUwMDQxXHUwMDQyXHUwMDQzIi5jaGFyQXQoaSkgIT09ICJcdTAwNDFcdTAwNDJcdTAwNDNBQkMiLnN1YnN0cmluZyhpLCBpKzEpKSB7CiAgICAgICRFUlJPUignIycraSsnOiAiQUJDXFx1MDA0MVxcdTAwNDJcXHUwMDQzIi5jaGFyQXQoJytpKycpID09PSAiXFx1MDA0MVxcdTAwNDJcXHUwMDQzQUJDIi5zdWJzdHJpbmcoJytpKycsICcrKGkrMSkrJykuIEFjdHVhbDogIkFCQ1xcdTAwNDFcXHUwMDQyXFx1MDA0MyIuY2hhckF0KCcraSsnKSA9PT0nKygiQUJDXHUwMDQxXHUwMDQyXHUwMDQzIi5jaGFyQXQoaSkpICk7IAogICAgfQp9CiAgICAKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ29tcGFyZSByZXN1bHRzIG9mIHguY2hhckF0KHBvcykgYW5kIHguc3Vic3RyaW5nKHBvcywgcG9zKzEpLCB3aGViIHBvcyBpcyBzbWFsbGVyIG9mIHplcm8iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKZm9yKHZhciBpPS0yOyBpPDA7IGkrKykgewogIGlmICgiQUJDXHUwMDQxXHUwMDQyXHUwMDQzIi5jaGFyQXQoaSkgIT09ICJcdTAwNDFcdTAwNDJcdTAwNDNBQkMiLnN1YnN0cmluZyhpLCBpKzEpKSB7CiAgICAgICRFUlJPUignIycrKGkrMikrJzogIkFCQ1xcdTAwNDFcXHUwMDQyXFx1MDA0MyIuY2hhckF0KCcraSsnKSA9PT0gIlxcdTAwNDFcXHUwMDQyXFx1MDA0M0FCQyIuc3Vic3RyaW5nKCcraSsnLCAnKyhpKzEpKycpLiBBY3R1YWw6ICJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiLmNoYXJBdCgnK2krJykgPT09JysoIkFCQ1x1MDA0MVx1MDA0Mlx1MDA0MyIuY2hhckF0KGkpKSApOyAKICAgIH0KfQogICAgCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTRfVDMiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ29tcGFyZSByZXN1bHRzIG9mIHguY2hhckF0KHBvcykgYW5kIHguc3Vic3RyaW5nKHBvcywgcG9zKzEpLCB3aGViIHBvcyBpcyBiaWdnZXIgc3RyaW5nIGxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQpmb3IodmFyIGk9NjsgaTw4OyBpKyspIHsKICBpZiAoIkFCQ1x1MDA0MVx1MDA0Mlx1MDA0MyIuY2hhckF0KGkpICE9PSAiXHUwMDQxXHUwMDQyXHUwMDQzQUJDIi5zdWJzdHJpbmcoaSwgaSsxKSkgewogICAgICAkRVJST1IoJyMnKyhpLTUpKyc6ICJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiLmNoYXJBdCgnK2krJykgPT09ICJcXHUwMDQxXFx1MDA0MlxcdTAwNDNBQkMiLnN1YnN0cmluZygnK2krJywgJysoaSsxKSsnKS4gQWN0dWFsOiAiQUJDXFx1MDA0MVxcdTAwNDJcXHUwMDQzIi5jaGFyQXQoJytpKycpID09PScrKCJBQkNcdTAwNDFcdTAwNDJcdTAwNDMiLmNoYXJBdChpKSkpOyAKICAgIH0KfQogICAgCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTUiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdlIHRvU3RyaW5nIGZ1bmN0aW9uLCBpdCB0cm93IGV4Y2VwdGlvbiwgYW5kIGNhbGwgY2hhckF0KCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaj17CiAgICB2YWx1ZU9mOjEsCiAgICB0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICdpbnRvc3RyaW5nJ30sCiAgICBjaGFyQXQ6U3RyaW5nLnByb3RvdHlwZS5jaGFyQXQKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmouY2hhckF0KCk7CiAgJEZBSUwoJyMxOiBfX29iaj17dmFsdWVPZjoxLHRvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgXCdpbnRvc3RyaW5nXCd9LGNoYXJBdDpTdHJpbmcucHJvdG90eXBlLmNoYXJBdH07ICJ2YXIgeCA9IF9fb2JqLmNoYXJBdCgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUgIT09ICdpbnRvc3RyaW5nJykgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09IFwnaW50b3N0cmluZ1wnLiBBY3R1YWw6IGV4Y2VwdGlvbiA9PT0nK2UgKTsgCiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTYiLAoKcGF0aDogIjE1LjUuNC40LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuY2hhckF0LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvdG90eXBlICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTciLAoKcGF0aDogIjE1LjUuNC40LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0IG9iamVjdCBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0OwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiB1bmRlZmluZWQgPSAxIHRocm93IGEgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOyAgCiAgfQp9CgogfQp9KTsKCg==","id":"S15.5.4.4_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTgiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMDogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCnZhciBjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY2hhckF0KXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQpe2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogY291bnQgPT09Jytjb3VudCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTkiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMDogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTEuMSIsCgpwYXRoOiAiMTUuNS40LjUsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt0aGlzLnRvU3RyaW5nID0gZnVuY3Rpb24oKXsgcmV0dXJuICJ3aXphcmQiO307fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICAgCiAgICBpZiAoX19pbnN0YW5jZS5jaGFyQ29kZUF0KGV2YWwoIjEiKSx0cnVlLG51bGwse30pIT09IDB4NjkpIHsKICAgICAgJEVSUk9SKCcjMTogX19pbnN0YW5jZS5jaGFyQ29kZUF0KGV2YWwoIjEiKSx0cnVlLG51bGwse30pPT09IDB4NjkuIEFjdHVhbDogX19pbnN0YW5jZS5jaGFyQ29kZUF0KGV2YWwoIjEiKSx0cnVlLG51bGwse30pPT09JytfX2luc3RhbmNlLmNoYXJDb2RlQXQoZXZhbCgiMSIpLHRydWUsbnVsbCx7fSkpOyAKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.5_A1.1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTEwIiwKCnBhdGg6ICIxNS41LjQuNSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoOwoKU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCAhPT0gX19vYmopIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCA9PT0gX19vYmouIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTExIiwKCnBhdGg6ICIxNS41LjQuNSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoNDIpOwoKX19pbnN0YW5jZS5jaGFyQ29kZUF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoKF9faW5zdGFuY2UuY2hhckNvZGVBdChmYWxzZSkgIT09IDUyKXx8KF9faW5zdGFuY2UuY2hhckNvZGVBdCh0cnVlKSAhPT0gNTApKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoNDIpOyBfX2luc3RhbmNlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7ICBfX2luc3RhbmNlLmNoYXJDb2RlQXQoZmFsc2UpID09PSA1MiBhbmQgX19pbnN0YW5jZS5jaGFyQ29kZUF0KHRydWUpID09PSA1MC4gQWN0dWFsOiBfX2luc3RhbmNlLmNoYXJDb2RlQXQoZmFsc2UpID09PScrX19pbnN0YW5jZS5jaGFyQ29kZUF0KGZhbHNlKSsnIGFuZCBfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkgPT09JytfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgY2hhckNvZGVBdCgpIGZ1bmN0aW9uIHdpdGggb2JqZWN0IGFyZ3VtZW50IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQp2YXIgX19zdHIgPSAibGVnbyI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogIGlmIChjaGFyQ29kZUF0KF9fb2JqKSAhPT0gMHg2NSkgewogICAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07IHZhciBfX3N0ciA9ICJsZWdvIjsgY2hhckNvZGVBdChfX29iaikgPT09IDB4NjUuIEFjdHVhbDogY2hhckNvZGVBdChfX29iaikgPT09JytjaGFyQ29kZUF0KF9fb2JqKSApOyAKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGVxdWF0aW9uIHdpdGggZmFsc2UgYW5kIHRydWUsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UuY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UuY2hhckNvZGVBdChmYWxzZSkhPT0weDY2KSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IF9faW5zdGFuY2UuY2hhckNvZGVBdChmYWxzZSk9PT0weDY2LiBBY3R1YWw6ICcrX19pbnN0YW5jZS5jaGFyQ29kZUF0KGZhbHNlKSk7ICAgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkhPT0weDYxKSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IF9faW5zdGFuY2UuY2hhckNvZGVBdCh0cnVlKT09PTB4NjEuIEFjdHVhbDogJytfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkpOyAgIAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19pbnN0YW5jZS5jaGFyQ29kZUF0KHRydWUrMSkgIT09IDB4NkMpIHsKICAkRVJST1IoJyMzOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UuY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgX19pbnN0YW5jZS5jaGFyQ29kZUF0KHRydWUrMSkgPT09IDB4NkMuIEFjdHVhbDogJytfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSsxKSApOyAgIAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiVXNlIG51bWJlcnMgYW5kIHN0cmluZ3MgYXMgcG9zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsKCmlmICh0eXBlb2YgdG9TdHJpbmcgPT09ICJ1bmRlZmluZWQiKXsKICAgIHZhciB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoY2hhckNvZGVBdCgiMiIpICE9PSAweDYyKSB7CiAgJEVSUk9SKCcjMTogY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgY2hhckNvZGVBdCgiMiIpID09PSAweDYyLiBBY3R1YWw6ICcrY2hhckNvZGVBdCgiMiIpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoY2hhckNvZGVBdCgzKSAhPT0gMHg2QSkgewogICRFUlJPUignIzI6IGNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IGNoYXJDb2RlQXQoMykgPT09IDB4NkEuIEFjdHVhbDogJytjaGFyQ29kZUF0KDMpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoY2hhckNvZGVBdCgiNCIpICE9PSAweDY1KSB7CiAgJEVSUk9SKCcjMzogY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgY2hhckNvZGVBdCgiNCIpID09PSAweDY1LiBBY3R1YWw6ICcrY2hhckNvZGVBdCgiNCIpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoY2hhckNvZGVBdCg1KSAhPT0gMHg2MykgewogICRFUlJPUignIzQ6IGNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IGNoYXJDb2RlQXQoNSkgPT09IDB4NjMuIEFjdHVhbDogJytjaGFyQ29kZUF0KDUpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoY2hhckNvZGVBdCgiNiIpICE9PSAweDc0KSB7CiAgJEVSUk9SKCcjNTogY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgY2hhckNvZGVBdCgiNiIpID09PSAweDc0LiBBY3R1YWw6ICcrY2hhckNvZGVBdCgiNiIpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgTnVtYmVyKCkgZXZhbHVhdGVzIHRvIDAgY2hhckNvZGVBdCgpIGV2YWx1YXRlcyB0byBjaGFyQ29kZUF0KDApCmlmICgic21hcnQiLmNoYXJDb2RlQXQoKSAhPT0gMHg3MykgewogICRFUlJPUignIzE6ICJzbWFydCIuY2hhckNvZGVBdCgpID09PSAweDczLiBBY3R1YWw6ICJzbWFydCIuY2hhckNvZGVBdCgpID09PScrKCJzbWFydCIuY2hhckNvZGVBdCgpKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCBudWxsIGFyZ3VtZW50IG9mIGZ1bmN0aW9uIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcihudWxsKSBldmFsdWF0ZXMgdG8gMCBjaGFyQ29kZUF0KCkgZXZhbHVhdGVzIHRvIGNoYXJDb2RlQXQoMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jaGFyQ29kZUF0KG51bGwpICE9PSAweDZDKSB7CiAgJEVSUk9SKCcjMTogZnVuY3Rpb24oKXtyZXR1cm4gImxlZ28ifSgpLmNoYXJDb2RlQXQobnVsbCkgPT09IDB4NkMuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAibGVnbyJ9KCkuY2hhckNvZGVBdChudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCB4IGFyZ3VtZW50IG9mIG5ldyBTdHJpbmcgb2JqZWN0LCB3aGVyZSB4IGlzIHVuZGVmaW5lZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAwIGNoYXJDb2RlQXQoKSBldmFsdWF0ZXMgdG8gY2hhckNvZGVBdCgwKQppZiAobmV3IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQoeCkgIT09IDB4NkMpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQoeCkgPT09IDB4NkMuIEFjdHVhbDogbmV3IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQoeCkgPT09JytuZXcgU3RyaW5nKCJsZWdvIikuY2hhckNvZGVBdCh4KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDciLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCB1bmRlZmluZWQgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAwIGNoYXJDb2RlQXQoKSBldmFsdWF0ZXMgdG8gY2hhckNvZGVBdCgwKQppZiAoU3RyaW5nKCJsZWdvIikuY2hhckNvZGVBdCh1bmRlZmluZWQpICE9PSAweDZDKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKCJsZWdvIikuY2hhckNvZGVBdCh1bmRlZmluZWQpID09PSAweDZDLiBBY3R1YWw6IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQodW5kZWZpbmVkKSA9PT0nK1N0cmluZygibGVnbyIpLmNoYXJDb2RlQXQodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCB2b2lkIDAgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcih2b2lkIDApIGV2YWx1YXRlcyB0byAwIGNoYXJDb2RlQXQoKSBldmFsdWF0ZXMgdG8gY2hhckNvZGVBdCgwKQppZiAoU3RyaW5nKDQyKS5jaGFyQ29kZUF0KHZvaWQgMCkgIT09IDB4MzQpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcoNDIpLmNoYXJDb2RlQXQodm9pZCAwKSA9PT0gMHgzNC4gQWN0dWFsOiBTdHJpbmcoNDIpLmNoYXJDb2RlQXQodm9pZCAwKSA9PT0nK1N0cmluZyg0MikuY2hhckNvZGVBdCh2b2lkIDApICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCBmdW5jdGlvbigpe30oKSBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIDAgY2hhckNvZGVBdCgpIGV2YWx1YXRlcyB0byBjaGFyQ29kZUF0KDApCmlmIChuZXcgU3RyaW5nKDQyKS5jaGFyQ29kZUF0KGZ1bmN0aW9uKCl7fSgpKSAhPT0gMHgzNCkgewogICRFUlJPUignIzE6IG5ldyBTdHJpbmcoNDIpLmNoYXJDb2RlQXQoZnVuY3Rpb24oKXt9KCkpID09PSAweDM0LiBBY3R1YWw6IG5ldyBTdHJpbmcoNDIpLmNoYXJDb2RlQXQoZnVuY3Rpb24oKXt9KCkpID09PScrbmV3IFN0cmluZyg0MikuY2hhckNvZGVBdChmdW5jdGlvbigpe30oKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTIiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KHBvcykgd2l0aCBuZWdhdGl2ZSBwb3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fRkFDVE9SWSgpe307CgpfX0ZBQ1RPUlkucHJvdG90eXBlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghaXNOYU4oX19pbnN0YW5jZS5jaGFyQ29kZUF0KC0xKSkpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt9OyBfX0ZBQ1RPUlkucHJvdG90eXBlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZOyBpc05hTihfX2luc3RhbmNlLmNoYXJDb2RlQXQoLTEpKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK2lzTmFOKF9faW5zdGFuY2UuY2hhckNvZGVBdCgtMSkpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTMiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGJpZ2dlciBvZiBzdHJpbmcgbGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIWlzTmFOKF9faW5zdGFuY2UuY2hhckNvZGVBdCgzKSkpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiQUJDIik7IGlzTmFOKF9faW5zdGFuY2UuY2hhckNvZGVBdCgzKSkgcmV0dXJuIHRydWUuIEFjdHVhbDogJytpc05hTihfX2luc3RhbmNlLmNoYXJDb2RlQXQoMykpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTQiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdlIHRvU3RyaW5nIGZ1bmN0aW9uLCBpdCB0cm93IGV4Y2VwdGlvbiwgYW5kIGNhbGwgY2hhckNvZGVBdCgpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmo9ewogICAgdmFsdWVPZjoxLAogICAgdG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAnaW50b3N0cmluZyd9LAogICAgY2hhckNvZGVBdDpTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmouY2hhckNvZGVBdCgpOwogICRGQUlMKCcjMTogICJ2YXIgeCA9IF9fb2JqLmNoYXJDb2RlQXQoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlICE9PSAnaW50b3N0cmluZycpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSBcJ2ludG9zdHJpbmdcJy4gQWN0dWFsOiBleGNlcHRpb24gPT09JytlICk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTYiLAoKcGF0aDogIjE1LjUuNC41LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTciLAoKcGF0aDogIjE1LjUuNC41LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdCBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQoKIH0KfSk7Cgo=","id":"S15.5.4.5_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTgiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2xlbmd0aFwnKSByZXR1cm4gZmFsc2UuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCnZhciBjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdCl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdCl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9IGNvdW50ID09PSAwLiBBY3R1YWw6IGNvdW50ID09PScrY291bnQgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTkiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTEwIiwKCnBhdGg6ICIxNS41LjQuNiIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jb25jYXQubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5jb25jYXQubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5jb25jYXQubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTExIiwKCnBhdGg6ICIxNS41LjQuNiIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBmYWxzZSBhbmQgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsKCl9faW5zdGFuY2UuY29uY2F0ID0gU3RyaW5nLnByb3RvdHlwZS5jb25jYXQ7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmNvbmNhdChmYWxzZSx0cnVlKSAhPT0gIjQyZmFsc2V0cnVlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsgX19pbnN0YW5jZS5jb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgIF9faW5zdGFuY2UuY29uY2F0KGZhbHNlLHRydWUpID09PSAiNDJmYWxzZXRydWUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5jb25jYXQoZmFsc2UsdHJ1ZSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNiIsCgpkZXNjcmlwdGlvbjogIkNhbGwgY29uY2F0KFssWy4uLl1dKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhcmd1bWVudHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxIjt9fQp2YXIgX19vYmoyID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX0KdmFyIF9fb2JqMyA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiA0Mjt9fQp2YXIgX19zdHIgPSAibGVnbyI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgaWYgKGNvbmNhdChfX29iaiwgX19vYmoyLCBfX29iajMsIHgpICE9PSAibGVnb0F0cnVlNDJ1bmRlZmluZWQiKSB7CiAgICAgICRFUlJPUignIzE6IHZhciB4OyB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MSI7fX07IHZhciBfX29iajIgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdHJ1ZTt9fTsgdmFyIF9fb2JqMyA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiA0Mjt9fTsgdmFyIF9fc3RyID0gImxlZ28iOyBjb25jYXQoX19vYmosIF9fb2JqMiwgX19vYmozLCB4KSA9PT0gImxlZ29BdHJ1ZTQydW5kZWZpbmVkIi4gQWN0dWFsOiAnK2NvbmNhdChfX29iaiwgX19vYmoyLCBfX29iajMsIHgpICk7IAogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBlcXVhdGlvbiB3aXRoIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25jYXQoIlx1MDA0MSIsdHJ1ZSx0cnVlKzEpICE9PSAiZmFsc2VBdHJ1ZTIiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OyAgX19pbnN0YW5jZS5jb25jYXQoIlxcdTAwNDEiLHRydWUsdHJ1ZSsxKSA9PT0gImZhbHNlQXRydWUyIi4gQWN0dWFsOiAnK19faW5zdGFuY2UuY29uY2F0KCJcdTAwNDEiLHRydWUsdHJ1ZSsxKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiVXNlIG51bWJlcnMgYW5kIGZ1bmN0aW9uIG9iamVjdCBhcyBhcmd1bWVudHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBjb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsKCnZhciBfX29iajUgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gNTt9fTsKCmlmICh0eXBlb2YgdG9TdHJpbmcgPT09ICJ1bmRlZmluZWQiKXsKICAgIHZhciB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoY29uY2F0KDEsMiwzLDQsX19vYmo1KSE9X19jbGFzc19fKyIxMjM0NSIpIHsKICAkRVJST1IoJyMxOiBjb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgY29uY2F0KDEsMiwzLDQsX19vYmo1KT09X19jbGFzc19fKyIxMjM0NSIuIEFjdHVhbDogY29uY2F0KDEsMiwzLDQsX19vYmo1KT09Jytjb25jYXQoMSwyLDMsNCxfX29iajUpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGhvdXQgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIGNvbmNhdCgpIGV2YWx1YXRlcyB0byBjb25jYXQoIiIpCmlmICgibGVnbyIuY29uY2F0KCkgIT09ICJsZWdvIikgewogICRFUlJPUignIzE6ICJsZWdvIi5jb25jYXQoKSA9PT0gImxlZ28iLiBBY3R1YWw6ICcrKCJsZWdvIi5jb25jYXQoKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggbnVsbCBhcmd1bWVudCBvZiBmdW5jdGlvbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIGNvbmNhdChudWxsKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJudWxsIikKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jb25jYXQobnVsbCkgIT09ICJsZWdvbnVsbCIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAibGVnbyJ9KCkuY29uY2F0KG51bGwpID09PSAibGVnb251bGwiLiBBY3R1YWw6ICcrZnVuY3Rpb24oKXtyZXR1cm4gImxlZ28ifSgpLmNvbmNhdChudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggeCBhcmd1bWVudCBvZiBuZXcgU3RyaW5nIG9iamVjdCwgd2hlcmUgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBjb25jYXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJ1bmRlZmluZWQiKQppZiAobmV3IFN0cmluZygibGVnbyIpLmNvbmNhdCh4KSAhPT0gImxlZ291bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoImxlZ28iKS5jb25jYXQoeCkgPT09ICJsZWdvdW5kZWZpbmVkIi4gQWN0dWFsOiAnK25ldyBTdHJpbmcoImxlZ28iKS5jb25jYXQoeCkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDciLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggdW5kZWZpbmVkIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBjb25jYXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJ1bmRlZmluZWQiKQppZiAoU3RyaW5nKCJsZWdvIikuY29uY2F0KHVuZGVmaW5lZCkgIT09ICJsZWdvdW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IFN0cmluZygibGVnbyIpLmNvbmNhdCh1bmRlZmluZWQpID09PSAibGVnb3VuZGVmaW5lZCIuIEFjdHVhbDogJytTdHJpbmcoImxlZ28iKS5jb25jYXQodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggdm9pZCAwIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh2b2lkIDApIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBjb25jYXQodm9pZCAwKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJ1bmRlZmluZWQiKQppZiAoU3RyaW5nKDQyKS5jb25jYXQodm9pZCAwKSAhPT0gIjQydW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IFN0cmluZyg0MikuY29uY2F0KHZvaWQgMCkgPT09ICI0MnVuZGVmaW5lZCIuIEFjdHVhbDogJytTdHJpbmcoNDIpLmNvbmNhdCh2b2lkIDApICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.6_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb24oKXt9KCkgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvICJ1bmRlZmluZWQiIGNvbmNhdCh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byBjb25jYXQoInVuZGVmaW5lZCIpCmlmIChuZXcgU3RyaW5nKDQyKS5jb25jYXQoZnVuY3Rpb24oKXt9KCkpICE9PSAiNDJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogbmV3IFN0cmluZyg0MikuY29uY2F0KGZ1bmN0aW9uKCl7fSgpKSA9PT0gIjQydW5kZWZpbmVkIi4gQWN0dWFsOiAnK25ldyBTdHJpbmcoNDIpLmNvbmNhdChmdW5jdGlvbigpe30oKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTIiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggMTI4IGFyZ3VtZW50cyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKCk7CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25jYXQoCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYKKSAhPT0gIjAwMTIzNDU2Nzg5MTAxMTEyMTMxNDE1MDEyMzQ1Njc4OTEwMTExMjEzMTQxNTAxMjM0NTY3ODkxMDExMTIxMzE0MTUwMTIzNDU2Nzg5MTAxMTEyMTMxNDE1MDEyMzQ1Njc4OTEwMTExMjEzMTQxNTAxMjM0NTY3ODkxMDExMTIxMzE0MTUwMTIzNDU2Nzg5MTAxMTEyMTMxNDE1MDEyMzQ1Njc4OTEwMTExMjEzMTQxNSIpIHsKICAkRVJST1IoJyMxOiBDYWxsIGNvbmNhdChbLFsuLi5dXSkgZnVuY3Rpb24gd2l0aCAxMjggYXJndW1lbnRzIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgYW55IGVycm9ycycpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgogfQp9KTsKCg==","id":"S15.5.4.6_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTMiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgaW5zdGFuY2UgdGhhdCBpcyBhcHBsaWVkIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIm9uZSIpOwoKX19pbnN0YW5jZS5jb25jYXQoInR3byIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZSAhPSAib25lIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJvbmUiKTsgX19pbnN0YW5jZS5jb25jYXQoInR3byIpOyAgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIm9uZSIpOyBfX2luc3RhbmNlLmNvbmNhdCgidHdvIik7IF9faW5zdGFuY2UgPT0gIm9uZSIuIEFjdHVhbDogJytfX2luc3RhbmNlKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJvbmUifX07CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25jYXQoInR3byIseCkgIT09ICJvbmV0d291bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9faW5zdGFuY2UgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIm9uZSJ9fTsgX19pbnN0YW5jZS5jb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgIF9faW5zdGFuY2UuY29uY2F0KCJ0d28iLHgpID09PSAib25ldHdvdW5kZWZpbmVkIi4gQWN0dWFsOiAnK19faW5zdGFuY2UuY29uY2F0KCJ0d28iLHgpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgoKCiB9Cn0pOwoK","id":"S15.5.4.6_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24gb250byBmdW5jdGlvbiwgdGhhdCB0aHJvdyBleGNlcHRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHJpbmciO319Owp2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5maXJzdGFyZyI7fX07CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIFN0cmluZy5wcm90b3R5cGUuY29uY2F0LmNhbGwoX19pbnN0YW5jZSxfX29iaiwgbm90ZXhpc3QpOwogICRGQUlMKCcjMTogIlN0cmluZy5wcm90b3R5cGUuY29uY2F0LmNhbGwoX19pbnN0YW5jZSxfX29iaiwgbm90ZXhpc3QpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUgIT09ICJpbnRvc3RyaW5nIikgewogICAgJEVSUk9SKCcjMTogZSA9PT0gImludG9zdHJpbmciLiBBY3R1YWw6ICcrZSApOyAKICB9Cn0gCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIG5vdGV4aXN0OwoKCgoKIH0KfSk7Cgo=","id":"S15.5.4.6_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTYiLAoKcGF0aDogIjE1LjUuNC42LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jb25jYXQucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuY29uY2F0LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jb25jYXQucHJvdG90eXBlICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.6_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTciLAoKcGF0aDogIjE1LjUuNC42LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0IG9iamVjdCBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQoKIH0KfSk7Cgo=","id":"S15.5.4.6_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTgiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2xlbmd0aFwnKSByZXR1cm4gZmFsc2UuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzIKY291bnQgPSAwOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY29uY2F0KXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudCA9IDA7IGZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdCl7IGlmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.6_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTkiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCkgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTEwIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzE6IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTExIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBmYWxzZSBhbmQgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5pbmRleE9mKHRydWUsIGZhbHNlKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLmluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7ICBfX2luc3RhbmNlLmluZGV4T2YodHJ1ZSwgZmFsc2UpID09PSAwLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5pbmRleE9mKHRydWUsIGZhbHNlKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkNhbGwgaW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhcmd1bWVudHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxQiI7fX0KdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX0KdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAoaW5kZXhPZihfX29iaiwgX19vYmoyKSAhPT0gMykgewogICAgICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX07IHZhciBfX3N0ciA9ICJBQkJcdTAwNDFCQUJBQiI7IGluZGV4T2YoX19vYmosIF9fb2JqMikgPT09IDMuIEFjdHVhbDogJytpbmRleE9mKF9fb2JqLCBfX29iajIpICk7IAogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.7_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDExIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkluc3RhbmNlIGlzIERhdGUoMCkgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBEYXRlKDApOwoKX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoKF9faW5zdGFuY2UuZ2V0VGltZXpvbmVPZmZzZXQoKT4wID8gX19pbnN0YW5jZS5pbmRleE9mKCczMScpIDogX19pbnN0YW5jZS5pbmRleE9mKCcwMScpKSAhPT0gOCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgRGF0ZSgwKTsgX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOyAgKF9faW5zdGFuY2UuZ2V0VGltZXpvbmVPZmZzZXQoKT4wID8gX19pbnN0YW5jZS5pbmRleE9mKFwnMzFcJykgOiBfX2luc3RhbmNlLmluZGV4T2YoXCcwMVwnKSkgPT09IDguIEFjdHVhbDogJysoX19pbnN0YW5jZS5nZXRUaW1lem9uZU9mZnNldCgpPjAgPyBfX2luc3RhbmNlLmluZGV4T2YoJzMxJykgOiBfX2luc3RhbmNlLmluZGV4T2YoJzAxJykpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkFyZ3VtZW50IGlzIHN0cmluZywgYW5kIGluc3RhbmNlIGlzIGFycmF5IG9mIHN0cmluZ3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEFycmF5KCduZXcnLCd6b28nLCdyZXZ1ZScpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5pbmRleE9mKCduZXcnKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoXCduZXdcJyxcJ3pvb1wnLFwncmV2dWVcJyk7IF9faW5zdGFuY2UuaW5kZXhPZihcJ25ld1wnKSA9PT0gMC4gQWN0dWFsOiAnK19faW5zdGFuY2UuaW5kZXhPZignbmV3JykgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2luc3RhbmNlLmluZGV4T2YoJ3pvbycpICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBBcnJheShcJ25ld1wnLFwnem9vXCcsXCdyZXZ1ZVwnKTsgX19pbnN0YW5jZS5pbmRleE9mKFwnem9vXCcpID09PSAxLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5pbmRleE9mKCd6b28nKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBib29sZWFuIGVxdWF0aW9uLCBmdW5jdGlvbiBhbmQgbnVsbCwgYW5kIGluc3RhbmNlIGlzIEJvb2xlYW4gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5pbmRleE9mKCJBIiE9PSJcdTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOyAgX19pbnN0YW5jZS5pbmRleE9mKCJBIiE9PSJcXHUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCkgPT09IDAuIEFjdHVhbDogJytfX2luc3RhbmNlLmluZGV4T2YoIkEiIT09Ilx1MDA0MSIsIGZ1bmN0aW9uKCl7cmV0dXJuIDA7fSgpLG51bGwpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7Cgp2YXIgX19vYmpfX3BvcyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDU7fX07CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoaW5kZXhPZihldmFsKCJcIltcIiIpLF9fb2JqX19wb3MpIT0tMSkgewogICRFUlJPUignIzE6IGluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7IGluZGV4T2YoZXZhbCgiXFwiW1xcIiIpLF9fb2JqX19wb3MpPT0tMS4gQWN0dWFsOiBpbmRleE9mKGV2YWwoIlxcIltcXCIiKSxfX29ial9fcG9zKT09JytpbmRleE9mKGV2YWwoIlwiW1wiIiksX19vYmpfX3BvcykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGhvdXQgYXJndW1lbnRzIG9mIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIGluZGV4T2YoKSBldmFsdWF0ZXMgdG8gaW5kZXhPZigiIiwwKQppZiAoIiIuaW5kZXhPZigpICE9PSAtMSkgewogICRFUlJPUignIzE6ICIiLmluZGV4T2YoKSA9PT0gLTEuIEFjdHVhbDogJysoIiIuaW5kZXhPZigpKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggbnVsbCBhcmd1bWVudCBvZiBmdW5jdGlvbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIGluZGV4T2YobnVsbCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoIiIsMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuaW5kZXhPZihudWxsKSAhPT0gMSkgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuaW5kZXhPZihudWxsKSA9PT0gMS4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuaW5kZXhPZihudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggeCBhcmd1bWVudCBvZiBuZXcgU3RyaW5nIG9iamVjdCwgd2hlcmUgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAiIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoIiIsMCkKaWYgKG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmluZGV4T2YoeCkgIT09IDApIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygidW5kZWZpbmVkIikuaW5kZXhPZih4KSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmluZGV4T2YoeCkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDciLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggdW5kZWZpbmVkIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoInVuZGVmaW5lZCIsMCkKaWYgKFN0cmluZygidW5kZWZpbmVkIikuaW5kZXhPZih1bmRlZmluZWQpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKCJ1bmRlZmluZWQiKS5pbmRleE9mKHVuZGVmaW5lZCkgPT09IDAuIEFjdHVhbDogJytTdHJpbmcoInVuZGVmaW5lZCIpLmluZGV4T2YodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggdm9pZCAwIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKHZvaWQgMCkgZXZhbHVhdGVzIHRvICJ1bmRlZmluZWQiIGluZGV4T2Yodm9pZCAwKSBldmFsdWF0ZXMgdG8gaW5kZXhPZigidW5kZWZpbmVkIikKaWYgKFN0cmluZyhfX29iaikuaW5kZXhPZih2b2lkIDApICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgU3RyaW5nKF9fb2JqKS5pbmRleE9mKHZvaWQgMCkgPT09IDAuIEFjdHVhbDogJytTdHJpbmcoX19vYmopLmluZGV4T2Yodm9pZCAwKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb24oKXt9KCkgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoInVuZGVmaW5lZCIpCmlmIChuZXcgU3RyaW5nKF9fb2JqKS5pbmRleE9mKGZ1bmN0aW9uKCl7fSgpKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBuZXcgU3RyaW5nKF9fb2JqKS5pbmRleE9mKGZ1bmN0aW9uKCl7fSgpKSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoX19vYmopLmluZGV4T2YoZnVuY3Rpb24oKXt9KCkpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIpIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJhYmNkIi5pbmRleE9mKCJhYmNkYWIiKSE9PS0xKSB7CiAgJEVSUk9SKCcjMTogImFiY2QiLmluZGV4T2YoImFiY2RhYiIpPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIsMCkgYW5kIGNoZWNrIHJlc3VsdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsMCkhPT0tMSkgewogICRFUlJPUignIzE6ICJhYmNkIi5pbmRleE9mKCJhYmNkYWIiLDApPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsMCkpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIsOTkpIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJhYmNkIi5pbmRleE9mKCJhYmNkYWIiLDk5KSE9PS0xKSB7CiAgJEVSUk9SKCcjMTogImFiY2QiLmluZGV4T2YoImFiY2RhYiIsOTkpPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsOTkpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIsTmFOKSBhbmQgY2hlY2sgcmVzdWx0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiYWJjZCIuaW5kZXhPZigiYWJjZGFiIixOYU4pIT09LTEpIHsKICAkRVJST1IoJyMxOiAiYWJjZCIuaW5kZXhPZigiYWJjZGFiIixOYU4pPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsTmFOKSkpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTNfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcIiQkYWJjZGFiY2RcIi5pbmRleE9mKFwiYWJcIixOYU4pIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCIkJGFiY2RhYmNkIi5pbmRleE9mKCJhYiIsTmFOKSE9PTIpIHsKICAkRVJST1IoJyMxOiAiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLE5hTik9PT0yLiBBY3R1YWw6ICcrKCIkJGFiY2RhYmNkIi5pbmRleE9mKCJhYiIsTmFOKSkpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTNfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcIiQkYWJjZGFiY2RcIi5pbmRleE9mKFwiYWJcIixldmFsKFwiXFxcIi05OVxcXCJcIikpIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCIkJGFiY2RhYmNkIi5pbmRleE9mKCJhYiIsZXZhbCgiXCItOTlcIiIpKSE9PTIpIHsKICAkRVJST1IoJyMxOiAiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLGV2YWwoIlxcIi05OVxcIiIpKT09PTIuIEFjdHVhbDogJysoIiQkYWJjZGFiY2QiLmluZGV4T2YoImFiIixldmFsKCJcIi05OVwiIikpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTNfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcIiQkYWJjZGFiY2RcIi5pbmRleE9mKFwiYWJcIixmdW5jdGlvbigpe3JldHVybiAtSW5maW5pdHk7fSgpKSBhbmQgY2hlY2sgcmVzdWx0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLCBmdW5jdGlvbigpe3JldHVybiAtSW5maW5pdHk7fSgpKSE9PTIpIHsKICAkRVJST1IoJyMxOiAiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLCBmdW5jdGlvbigpe3JldHVybiAtSW5maW5pdHk7fSgpKT09PTIuIEFjdHVhbDogJysoIiQkYWJjZGFiY2QiLmluZGV4T2YoImFiIiwgZnVuY3Rpb24oKXtyZXR1cm4gLUluZmluaXR5O30oKSkpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludGVnZXIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIT09ImludG9pbnRlZ2VyIikgewogICAgICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOyAKICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBzZWNvbmQgdG9TdHJpbmcgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fQp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCJBQkJcdTAwNDFCQUJBQiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gaW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOyAKICAgICAgfQogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIxIjt9fQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIkFCQlx1MDA0MUJBQkFCIi5pbmRleE9mKF9fb2JqLCBfX29iajIpIT09MykgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxQiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIxIjt9fTsgIkFCQlxcdTAwNDFCQUJBQiIuaW5kZXhPZihfX29iaiwgX19vYmoyKT09PTMuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJBQkFCIi5pbmRleE9mKF9fb2JqLCBfX29iajIpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBhbmQgdGhleSB0aHJvdyBleGNlcHRpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50Ijt9fTsKdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDAxLjEwMDAxKTsKTnVtYmVyLnByb3RvdHlwZS5pbmRleE9mPVN0cmluZy5wcm90b3R5cGUuaW5kZXhPZjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gaW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsgCiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDUiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBmaXJzdCBhbmQgc2Vjb25kIHZhbHVlT2YgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319OwoKdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuaW5kZXhPZiA9IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZjsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19pbnN0YW5jZS5pbmRleE9mKF9fb2JqLCBfX29iajIpOwogICRGQUlMKCcjMTogInZhciB4ID0gX19pbnN0YW5jZS5pbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsgCiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19GQUNUT1JZKCB2YWx1ZSApIHsKICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgIHRoaXMudG9TdHJpbmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuIG5ldyBOdW1iZXI7IH07CiAgICB0aGlzLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZSsiIn07Cn0KCiB9Cn0pOwoK","id":"S15.5.4.7_A4_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIG9uZSBzeW1ib2wgZnJvbSBiZWdpbiBvZiBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBURVNUX1NUUklORyA9IG5ldyBTdHJpbmcoICIgIVwiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+IiApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQpmb3IgKHZhciAgayA9IDAsIGkgPSAweDAwMjA7IGkgPCAweDAwN2U7IGkrKywgaysrICkgewogICAgaWYgKFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIDAgKSE9PWspIHsKICAgICAgJEVSUk9SKCcjJysoaS0weDAwMjApKyc6IFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpLCAwICk9PT0nK2srJy4gQWN0dWFsOiAnK1RFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIDAgKSk7IAogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIG9uZSBzeW1ib2wgZnJvbSBpdGBzIHBvc2l0aW9uIGluIHRoZSBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBURVNUX1NUUklORyA9IG5ldyBTdHJpbmcoICIgIVwiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+IiApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQpmb3IgKHZhciAgayA9IDAsIGkgPSAweDAwMjA7IGkgPCAweDAwN2U7IGkrKywgaysrICkgewogICAgaWYgKFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIGsgKSE9PWspIHsKICAgICAgJEVSUk9SKCcjJysoaS0weDAwMjApKyc6IFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpLCAnK2srJyApPT09JytrKycuIEFjdHVhbDogJytURVNUX1NUUklORy5pbmRleE9mKCBTdHJpbmcuZnJvbUNoYXJDb2RlKGkpLCBrICkpOyAKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A5_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIG9uZSBzeW1ib2wgZnJvbSBpdGBzIHBvc2l0aW9uKzEgaW4gdGhlIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIFRFU1RfU1RSSU5HID0gbmV3IFN0cmluZyggIiAhXCIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX4iICk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvciAoIHZhciBrID0gMCwgaSA9IDB4MDAyMDsgaSA8IDB4MDA3ZTsgaSsrLCBrKysgKSB7CiAgICBpZiAoVEVTVF9TVFJJTkcuaW5kZXhPZiggU3RyaW5nLmZyb21DaGFyQ29kZShpKSwgaysxICkgIT09IC0xKSB7CiAgICAgICRFUlJPUignIycrKGktMHgwMDIwKSsnOiBURVNUX1NUUklORy5pbmRleE9mKCBTdHJpbmcuZnJvbUNoYXJDb2RlKCcraSsnKSwgJysoaysxKSsnICk9PT0tMS4gQWN0dWFsOiAnK1RFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIGsrMSApKTsgCiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A5_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIHN1YnN0cmluZyBmcm9tIGJlZ2luIG9mIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIFRFU1RfU1RSSU5HID0gbmV3IFN0cmluZyggIiAhXCIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX4iICk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvciAodmFyIGsgPSAwLCBpID0gMHgwMDIwOyBpIDwgMHgwMDdkOyBpKyssIGsrKyApIHsKICAgIGlmIChURVNUX1NUUklORy5pbmRleE9mKCAoU3RyaW5nLmZyb21DaGFyQ29kZShpKSsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzEpICsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzIpKSwgMCApIT09aykgewogICAgICAkRVJST1IoJyMnKyhpLTB4MDAyMCkrJzogVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMSkrJykgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMikrJykpLCAwICk9PT0nK2srJy4gQWN0dWFsOiAnK1RFU1RfU1RSSU5HLmluZGV4T2YoIChTdHJpbmcuZnJvbUNoYXJDb2RlKGkpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkrMSkgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkrMikpLCAwICkpOyAKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A5_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDUiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIHN1YnN0cmluZyBmcm9tIGl0YHMgcG9zaXRpb24gaW4gdGhlIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIFRFU1RfU1RSSU5HID0gbmV3IFN0cmluZyggIiAhXCIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX4iICk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvciAoIHZhciBrID0gMCwgaSA9IDB4MDAyMDsgaSA8IDB4MDA3ZDsgaSsrLCBrKysgKSB7CiAgICBpZiAoVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoaSkrIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsxKSsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzIpKSxrICkgIT09aykgewogICAgICAkRVJST1IoJyMnKyhpLTB4MDAyMCkrJzogVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMSkrJykgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMikrJykpLCAnK2srJyApPT09JytrKycuIEFjdHVhbDogJytURVNUX1NUUklORy5pbmRleE9mKCAoU3RyaW5nLmZyb21DaGFyQ29kZShpKSsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzEpICsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzIpKSwgayApKTsgCiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A5_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDYiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIHN1YnN0cmluZyBmcm9tIGl0YHMgcG9zaXRpb24rMSBpbiB0aGUgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgVEVTVF9TVFJJTkcgPSBuZXcgU3RyaW5nKCAiICFcIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fiIgKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKZm9yICh2YXIgayA9IDAsIGkgPSAweDAwMjA7IGkgPCAweDAwN2Q7IGkrKywgaysrICkgewogICAgaWYgKFRFU1RfU1RSSU5HLmluZGV4T2YoIChTdHJpbmcuZnJvbUNoYXJDb2RlKGkpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkrMSkrIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsyKSksIGsrMSApIT09IC0xKSB7CiAgICAgICRFUlJPUignIycrKGktMHgwMDIwKSsnOiBURVNUX1NUUklORy5pbmRleE9mKCAoU3RyaW5nLmZyb21DaGFyQ29kZSgnK2krJykrIFN0cmluZy5mcm9tQ2hhckNvZGUoJysoaSsxKSsnKSArIFN0cmluZy5mcm9tQ2hhckNvZGUoJysoaSsyKSsnKSksICcrKGsrMSkrJyApPT09IC0xLiBBY3R1YWw6ICcrVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoaSkrIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsxKSArIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsyKSksIGsrMSApKTsgCiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A5_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTYiLAoKcGF0aDogIjE1LjUuNC43LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTciLAoKcGF0aDogIjE1LjUuNC43LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZiBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7ICJfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikgIT09IHRydWUpIHsKICAgICRFUlJPUignIzEuMjogdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZjsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiB0aHJvdyBhIFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KICAkUFJJTlQoZSk7Cn0KCiB9Cn0pOwoK","id":"S15.5.4.7_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTgiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMwOiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YpewogIGlmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7Cn0KCmlmIChjb3VudCAhPT0gMCkgewogICRFUlJPUignIzI6IGNvdW50PTA7IGZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Ype2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTkiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcmF0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTEwIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMTogU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoOwoKU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTExIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkNhbGwgbGFzdEluZGV4T2Yoc2VhcmNoU3RyaW5nLCBwb3NpdGlvbikgZnVuY3Rpb24gd2l0aCBvYmplY3QgYXJndW1lbnRzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiBOYU47fX0KdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgaWYgKGxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpICE9PSA3KSB7CiAgICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIE5hTjt9fTsgdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjtsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKSA9PT0gNy4gQWN0dWFsOiAnK2xhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkFyZ3VtZW50IGlzIHN0cmluZywgYW5kIGluc3RhbmNlIGlzIGFycmF5IG9mIHN0cmluZ3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEFycmF5KCduZXcnLCd6b28nLCdyZXZ1ZScpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5sYXN0SW5kZXhPZignbmV3JykgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEFycmF5KFwnbmV3XCcsXCd6b29cJyxcJ3JldnVlXCcpOyBfX2luc3RhbmNlLmxhc3RJbmRleE9mKFwnbmV3XCcpID09PSAwLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5sYXN0SW5kZXhPZignbmV3JykgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9faW5zdGFuY2UubGFzdEluZGV4T2YoJ3pvbycpICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBBcnJheShcJ25ld1wnLFwnem9vXCcsXCdyZXZ1ZVwnKTsgX19pbnN0YW5jZS5sYXN0SW5kZXhPZihcJ3pvb1wnKSA9PT0gMS4gQWN0dWFsOiAnK19faW5zdGFuY2UubGFzdEluZGV4T2YoJ3pvbycpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBib29sZWFuIGVxdWF0aW9uLCBmdW5jdGlvbiBhbmQgbnVsbCwgYW5kIGluc3RhbmNlIGlzIEJvb2xlYW4gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS5sYXN0SW5kZXhPZiA9IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Y7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmxhc3RJbmRleE9mKCJBIiE9PSJcdTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5sYXN0SW5kZXhPZiA9IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Y7ICBfX2luc3RhbmNlLmxhc3RJbmRleE9mKCJBIiE9PSJcXHUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCkgPT09IDAuIEFjdHVhbDogJytfX2luc3RhbmNlLmxhc3RJbmRleE9mKCJBIiE9PSJcdTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGxhc3RJbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZjsKCnZhciBfX29ial9fcG9zID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gNzt9fTsKCmlmICh0eXBlb2YgdG9TdHJpbmcgPT09ICJ1bmRlZmluZWQiKXsKICB2YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGxhc3RJbmRleE9mKGV2YWwoIlwiW1wiIiksX19vYmpfX3BvcykhPSAwKSB7CiAgJEVSUk9SKCcjMTogbGFzdEluZGV4T2YoZXZhbCgiXFwiW1xcIiIpLF9fb2JqX19wb3MpPT0gMC4gQWN0dWFsOiAnK2xhc3RJbmRleE9mKGV2YWwoIlwiW1wiIiksX19vYmpfX3BvcykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRob3V0IGFyZ3VtZW50cyBvZiBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZygpIGV2YWx1YXRlcyB0byAiIiBsYXN0SW5kZXhPZigpIGV2YWx1YXRlcyB0byBsYXN0SW5kZXhPZigiIiwwKQppZiAoIiIubGFzdEluZGV4T2YoKSAhPT0gLTEpIHsKICAkRVJST1IoJyMxOiAiIi5sYXN0SW5kZXhPZigpID09PSAtMS4gQWN0dWFsOiAnKygiIi5sYXN0SW5kZXhPZigpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIG51bGwgYXJndW1lbnQgb2YgZnVuY3Rpb24gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcobnVsbCkgZXZhbHVhdGVzIHRvICJudWxsIiBsYXN0SW5kZXhPZihudWxsKSBldmFsdWF0ZXMgdG8gbGFzdEluZGV4T2YoIiIsMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYXp6Z251bGwifSgpLmxhc3RJbmRleE9mKG51bGwpICE9PSAxMSkgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYXp6Z251bGwifSgpLmxhc3RJbmRleE9mKG51bGwpID09PSAxMS4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYXp6Z251bGwifSgpLmxhc3RJbmRleE9mKG51bGwpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIHggYXJndW1lbnQgb2YgbmV3IFN0cmluZyBvYmplY3QsIHdoZXJlIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gIiIgbGFzdEluZGV4T2YodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gbGFzdEluZGV4T2YoIiIsMCkKaWYgKG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmxhc3RJbmRleE9mKHgpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmxhc3RJbmRleE9mKHgpID09PSAwLiBBY3R1YWw6ICcrbmV3IFN0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YoeCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDciLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIHVuZGVmaW5lZCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgbGFzdEluZGV4T2YodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gbGFzdEluZGV4T2YoInVuZGVmaW5lZCIsMCkKaWYgKFN0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YodW5kZWZpbmVkKSAhPT0gMCkgewogICRFUlJPUignIzE6IFN0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YodW5kZWZpbmVkKSA9PT0gMC4gQWN0dWFsOiAnK1N0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YodW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIHZvaWQgMCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh2b2lkIDApIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBsYXN0SW5kZXhPZih2b2lkIDApIGV2YWx1YXRlcyB0byBsYXN0SW5kZXhPZigidW5kZWZpbmVkIiwwKQppZiAoU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZih2b2lkIDApICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZih2b2lkIDApID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZih2b2lkIDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIGZ1bmN0aW9uKCl7fSgpIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHsKICB2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwKICB0b1N0cmluZzp2b2lkIDAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoInVuZGVmaW5lZCIpCmlmIChuZXcgU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZihmdW5jdGlvbigpe30oKSkgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgbmV3IFN0cmluZyhfX29iaikubGFzdEluZGV4T2YoZnVuY3Rpb24oKXt9KCkpID09PSAwLiBBY3R1YWw6ICcrbmV3IFN0cmluZyhfX29iaikubGFzdEluZGV4T2YoZnVuY3Rpb24oKXt9KCkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludGVnZXIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgICAgICRGQUlMKCcjMTogdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIT09ImludG9pbnRlZ2VyIikgewogICAgICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.8_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBzZWNvbmQgdG9TdHJpbmcgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fQp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCJBQkJcdTAwNDFCQUJBQiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gbGFzdEluZGV4T2YoX19vYmosIF9fb2JqMik7CiAgICAgICRGQUlMKCcjMTogdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDMiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7fX0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJBQkJcdTAwNDFCQUJBQiIubGFzdEluZGV4T2YoX19vYmosIF9fb2JqMikhPT03KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgIkFCQlxcdTAwNDFCQUJBQiIubGFzdEluZGV4T2YoX19vYmosIF9fb2JqMik9PT03LiBBY3R1YWw6ICcrKCJBQkJcdTAwNDFCQUJBQiIubGFzdEluZGV4T2YoX19vYmosIF9fb2JqMikpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.8_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDQiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBhbmQgdGhleSB0aHJvdyBleGNlcHRpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50Ijt9fTsKdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDAxLjEwMDAxKTsKTnVtYmVyLnByb3RvdHlwZS5sYXN0SW5kZXhPZj1TdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9faW5zdGFuY2UpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiB2YXIgeCA9IGxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDUiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBmaXJzdCBhbmQgc2Vjb25kIHZhbHVlT2YgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319OwoKdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUubGFzdEluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mOwoKdmFyIF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZKHZvaWQgMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX2luc3RhbmNlLmxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpOwogICRGQUlMKCcjMTogdmFyIHggPSBfX2luc3RhbmNlLmxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fRkFDVE9SWSggdmFsdWUgKSB7CiAgICB0aGlzLnZhbHVlID0gdmFsdWU7CiAgICB0aGlzLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7IHJldHVybiBuZXcgTnVtYmVyOyB9OwogICAgdGhpcy52YWx1ZU9mPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWUrIiJ9Owp9CgogfQp9KTsKCg==","id":"S15.5.4.8_A4_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTYiLAoKcGF0aDogIjE1LjUuNC44LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5wcm90b3R5cGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YucHJvdG90eXBlICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5wcm90b3R5cGUgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.8_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTciLAoKcGF0aDogIjE1LjUuNC44LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Ygb2JqZWN0IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZjsKCnRyeSB7CiAgdmFyIF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZOwogICRGQUlMKCcjMTogX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZjsgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogICRQUklOVChlKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.8_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTgiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLnByb3BlcnR5SXNFbnVtZXJhYmxlKFwnbGVuZ3RoXCcpIHJldHVybiBmYWxzZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCmNvdW50PTA7Cgpmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZil7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Ype2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTkiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmxlbmd0aCkgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmxlbmd0aCByZXR1cm4gZmFsc2UnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTEwIiwKCnBhdGg6ICIxNS41LjQuOSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.9_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTExIiwKCnBhdGg6ICIxNS41LjQuOSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.9_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiVGhpcyBzdHJpbmcgaXMgc3ltYm9sIGFuZCBhcmd1bWVudHMgYXJlIHN5bWJvbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBzdHIxID0gbmV3IFN0cmluZygiaCIpOyAKLy9DSEVDSyMxCnZhciBzdHIyID0gbmV3IFN0cmluZyAoIlx4NjgiKTsKaWYgIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0wKXsKICAkRVJST1IoJyMxOiB2YXIgc3RyMSA9IG5ldyBTdHJpbmcoImgiKTsgdmFyIHN0cjIgPSBuZXcgU3RyaW5nICgiXFx4NjgiKTsgc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpPT09MC4gQWN0dWFsOiAnK3N0cjEubG9jYWxlQ29tcGFyZShzdHIyKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgc3RyMiA9IG5ldyBTdHJpbmcgKCJcdTAwNjgiKTsKaWYgIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0wKXsKICAkRVJST1IoJyMyOiB2YXIgc3RyMSA9IG5ldyBTdHJpbmcoImgiKTsgdmFyIHN0cjIgPSBuZXcgU3RyaW5nICgiXFx1MDA2OCIpOyBzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMik9PT0wLiBBY3R1YWw6ICcrc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpKTsKfQoKLy9DSEVDSyMzCnZhciBzdHIyID0gbmV3IFN0cmluZyAoImgiKTsKaWYgIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0wKXsKICAkRVJST1IoJyMzOiB2YXIgc3RyMSA9IG5ldyBTdHJpbmcoImgiKTsgdmFyIHN0cjIgPSBuZXcgU3RyaW5nICgiaCIpOyBzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMik9PT0wLiBBY3R1YWw6ICcrc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.9_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzdHJpbmdfMS5sb2NhbGVDb21wYXJlKHN0cmluZ18yKSBpcyBlcXVhbCAtc3RyaW5nXzIubG9jYWxlQ29tcGFyZShzdHJpbmdfMSkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vQ0hFQ0sjMQp2YXIgc3RyMSA9ICJoIjsKdmFyIHN0cjIgPSAiSCI7CmlmIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0tc3RyMi5sb2NhbGVDb21wYXJlKHN0cjEpKXsKICAkRVJST1IoJyMxLjE6IHZhciBzdHIxID0gImgiOyB2YXIgc3RyMiA9ICJIIjsgc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpPT09LXN0cjIubG9jYWxlQ29tcGFyZShzdHIxKS4gQWN0dWFsOiAnK3N0cjEubG9jYWxlQ29tcGFyZShzdHIyKSk7Cn0KCiB9Cn0pOwoK","id":"S15.5.4.9_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTYiLAoKcGF0aDogIjE1LjUuNC45LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.9_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTciLAoKcGF0aDogIjE1LjUuNC45LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmU7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZTsgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkge30KCiB9Cn0pOwoK","id":"S15.5.4.9_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTgiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMwOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2xlbmd0aFwnKSByZXR1cm4gZmFsc2UnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCnZhciBjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.9_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTkiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMwOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.9_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTEiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIHN0cmluZ3MgYW5kIGNoZWNrIGl0cyBsZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJBQkNcdTAwNDFcdTAwNDJcdTAwNDMiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyX19pbnN0YW5jZS5sZW5ndGggIT09IDYpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZygiQUJDXFx1MDA0MVxcdTAwNDJcXHUwMDQzIik7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGggPT09IDYsIHdoZXJlIF9fc3RyX19pbnN0YW5jZSBpcyBuZXcgU3RyaW5nKCJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiKS4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZzsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gMCwgd2hlcmUgX19zdHJfX2luc3RhbmNlIGlzIG5ldyBTdHJpbmcuIEFjdHVhbDogX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0nK19fc3RyX19pbnN0YW5jZS5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5.1_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTIiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBTdHJpbmcgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOyBfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmZvcihwcm9wIGluIF9fc3RyX19pbnN0YW5jZSl7CiAgICBpZiAocHJvcCA9PT0gImxlbmd0aCIpIHsKICAgICAgJEVSUk9SKCcjMjogbGVuZ3RoIHByb3BlcnR5IGhhcyB0aGUgYXR0cmlidXRlcyB7RG9udEVudW19Jyk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5.1_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTMiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBTdHJpbmcgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOyBfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChkZWxldGUgX19zdHJfX2luc3RhbmNlID09PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IGRlbGV0ZSBfX3N0cl9faW5zdGFuY2UgIT09IHRydWUnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKCEoX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZygiZ2xvYmdsb2IiKTsgZGVsZXRlIF9fc3RyX19pbnN0YW5jZTsgX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK19fc3RyX19pbnN0YW5jZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.5.1_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTQiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgbGVuZ3RoIHByb3BlcnR5IG9mIFN0cmluZyBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKF9fc3RyX19pbnN0YW5jZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IF9fc3RyX19pbnN0YW5jZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyX19pbnN0YW5jZS5sZW5ndGggIT09IDgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZygiZ2xvYmdsb2IiKTsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gOC4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyX19pbnN0YW5jZS5sZW5ndGg9LTE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA4KSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGg9LTE7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGggPT09IDgoYWZ0ZXIgcmVkZWZpbmUgbGVuZ3RoIHByb3BlcnR5KS4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCndpdGgoX19zdHJfX2luc3RhbmNlKQogICAgbGVuZ3RoID0gMDsKICAgIAovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA4KSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IHdpdGgoX19zdHJfX2luc3RhbmNlKSBsZW5ndGggPSAwOyBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PSA4KGFmdGVyIHJlZGVmaW5lIGxlbmd0aCBwcm9wZXJ0eSB3aXRoIHVzaW5nICJ3aXRoIikuIEFjdHVhbDogX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0nK19fc3RyX19pbnN0YW5jZS5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0cl9faW5zdGFuY2UubGVuZ3RoKys7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA4KSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGgrKzsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gOChhZnRlciByZWRlZmluZSBsZW5ndGggcHJvcGVydHkgd2l0aCB1c2luZyAiKysiKS4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5.1_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTUiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdlIHZhbHVlT2YgYW5kIHRvU3RyaW5nIG9mIFN0cmluZyBvYmplY3QgYW5kIGNoZWNrIGxlbmd0aCBwcm9wZXJ0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQ1x1MDA0MVx1MDA0Mlx1MDA0MyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJfX2luc3RhbmNlLmxlbmd0aCAhPT0gNikgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiKTsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gNi4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyX19pbnN0YW5jZS52YWx1ZU9mID0gZnVuY3Rpb24oKXtyZXR1cm4gImVkIn07Cl9fc3RyX19pbnN0YW5jZS50b1N0cmluZyA9IGZ1bmN0aW9uKCl7cmV0dXJuICJlZCJ9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHJfX2luc3RhbmNlICE9ImVkIikgewogICRFUlJPUignIzI6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiKTsgX19zdHJfX2luc3RhbmNlLnZhbHVlT2YgPSBmdW5jdGlvbigpe3JldHVybiAiZWQifTsgX19zdHJfX2luc3RhbmNlLnRvU3RyaW5nID0gZnVuY3Rpb24oKXtyZXR1cm4gImVkIn07IF9fc3RyX19pbnN0YW5jZSA9PSJlZCIuIEFjdHVhbDogX19zdHJfX2luc3RhbmNlID09JytfX3N0cl9faW5zdGFuY2UgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA2KSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQ1xcdTAwNDFcXHUwMDQyXFx1MDA0MyIpOyBfX3N0cl9faW5zdGFuY2UudmFsdWVPZiA9IGZ1bmN0aW9uKCl7cmV0dXJuICJlZCJ9OyBfX3N0cl9faW5zdGFuY2UudG9TdHJpbmcgPSBmdW5jdGlvbigpe3JldHVybiAiZWQifTsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gNi4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5.1_A5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0ExX1QxIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDcmVhdGUgbmV3IFN0cmluZyBhbmQgdHJ5IGNhbGwgaXQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgX19zdHIoKTsKICAkRkFJTCgnIzE6IF9fc3RyID0gbmV3IFN0cmluZzsgX19zdHIoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0ExX1QyIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyBuZXcgXCJTdHJpbmcoXCJhfGJcIikoKVwiIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgU3RyaW5nKCJhfGIiKSgpOwogICRGQUlMKCcjMTogU3RyaW5nKCJhfGIiKSgpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoIShlIGluc3RhbmNlb2YgVHlwZUVycm9yKSkgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gaXMgaW5zdGFuY2Ugb2YgVHlwZUVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0EyX1QxIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDcmVhdGUgbmV3IHN0cmluZyBvYmplY3QgYW5kIHRyeSBuZXcgY3JlYXRlZF9zdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBPYmplY3QoIiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIG5ldyBfX3N0cjsKICAkRkFJTCgnIzE6IF9fc3RyID0gbmV3IE9iamVjdCgiIik7ICJuZXcgX19zdHIiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoIShlIGluc3RhbmNlb2YgVHlwZUVycm9yKSkgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gaXMgaW5zdGFuY2Ugb2YgVHlwZUVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0EyX1QyIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyBcIm5ldyBTdHJpbmdcIiBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIG5ldyBuZXcgU3RyaW5nOwogICRGQUlMKCcjMTogIm5ldyBuZXcgU3RyaW5nIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5_A2_T2"}]}} \ No newline at end of file +{"testsCollection":{"name":"Chapter - 15.5_String_Objects","numTests":"578","tests":[{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyID0gU3RyaW5nKGZ1bmN0aW9uKCl7fSgpKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyhmdW5jdGlvbigpe30oKSk7IF9fc3RyID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDEpIGFuZCBTdHJpbmcoLTEpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoMSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICIxIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDEpOyBfX3N0ciA9PT0gIjEiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygtMSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoLTEpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiLTEiKSB7CiAgJEVSUk9SKCcjNDogX19zdHIgPSBTdHJpbmcoLTEpOyBfX3N0ciA9PT0gIi0xIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDExIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDEvMCkgYW5kIFN0cmluZygtMS8wKSwgYW5kIGNhbGwgd2l0aCArLy1JbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKDEvMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMS8wKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIkluZmluaXR5IikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDEvMCk7IF9fc3RyID09PSAiSW5maW5pdHkiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygtMS8wKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IFN0cmluZygtMS8wKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0ciAhPT0gIi1JbmZpbml0eSIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9IFN0cmluZygtMS8wKTsgX19zdHIgPT09ICItSW5maW5pdHkiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhJbmZpbml0eSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPSBTdHJpbmcoSW5maW5pdHkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3RyICE9PSAiSW5maW5pdHkiKSB7CiAgJEVSUk9SKCcjNjogX19zdHIgPSBTdHJpbmcoSW5maW5pdHkpOyBfX3N0ciA9PT0gIkluZmluaXR5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoLUluZmluaXR5KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzcKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM3OiBfX3N0ciA9IFN0cmluZygtSW5maW5pdHkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzgKaWYgKF9fc3RyICE9PSAiLUluZmluaXR5IikgewogICRFUlJPUignIzg6IF9fc3RyID0gU3RyaW5nKC1JbmZpbml0eSk7IF9fc3RyID09PSAiLUluZmluaXR5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzkKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM5OiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEwCmlmIChfX3N0ciAhPT0gIkluZmluaXR5IikgewogICRFUlJPUignIzEwOiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpOyBfX3N0ciA9PT0gIkluZmluaXR5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzExCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTE6IF9fc3RyID0gU3RyaW5nKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMTIKaWYgKF9fc3RyICE9PSAiLUluZmluaXR5IikgewogICRFUlJPUignIzEyOiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpOyBfX3N0ciA9PT0gIi1JbmZpbml0eSIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDEvXCJhXCIpLCBTdHJpbmcoXCJiXCIqIG51bGwpIGFuZCBTdHJpbmcoTnVtYmVyLk5hTikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IFN0cmluZygxLyJhIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMS8iYSIpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDEvImEiKTsgX19zdHIgPT09ICJOYU4iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygiYiIqbnVsbCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoImIiKm51bGwpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9PSAiTmFOIikgewogICRFUlJPUignIzQ6IF9fc3RyID0gU3RyaW5nKCJiIipudWxsKTsgX19zdHIgPT09ICJOYU4iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhOdW1iZXIuTmFOKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM1OiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuTmFOKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0ciAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IFN0cmluZyhOdW1iZXIuTmFOKTsgX19zdHIgPT09ICJOYU4iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.1.1_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDEzIiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKHRydWUpIGFuZCBTdHJpbmcoZmFsc2UpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcodHJ1ZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcodHJ1ZSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICJ0cnVlIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKHRydWUpOyBfX3N0ciA9PT0gInRydWUiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhmYWxzZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoZmFsc2UpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9PSAiZmFsc2UiKSB7CiAgJEVSUk9SKCcjNDogX19zdHIgPSBTdHJpbmcoZmFsc2UpOyBfX3N0ciA9PT0gImZhbHNlIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoQm9vbGVhbih0cnVlKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPSBTdHJpbmcoQm9vbGVhbih0cnVlKSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNgppZiAoX19zdHIgIT09ICJ0cnVlIikgewogICRFUlJPUignIzY6IF9fc3RyID0gU3RyaW5nKEJvb2xlYW4odHJ1ZSkpOyBfX3N0ciA9PT0gInRydWUiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyhCb29sZWFuKGZhbHNlKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM3CmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjNzogX19zdHIgPSBTdHJpbmcoQm9vbGVhbihmYWxzZSkpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzgKaWYgKF9fc3RyICE9PSAiZmFsc2UiKSB7CiAgJEVSUk9SKCcjODogX19zdHIgPSBTdHJpbmcoQm9vbGVhbihmYWxzZSkpOyBfX3N0ciA9PT0gImZhbHNlIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE0IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKDApIGFuZCBTdHJpbmcoLTApIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMCk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICIwIikgewogICRFUlJPUignIzI6IF9fc3RyID0gU3RyaW5nKDApOyBfX3N0ciA9PT0gIjAiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygtMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoLTApOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiMCIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9IFN0cmluZygtMCk7IF9fc3RyID09PSAiMCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE1IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKHN0cmluZ19vYmplY3QpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmpfX3N0ciA9ICJjYXBzIjsKCi8vX19vYmpfX3N0ci5wcm9wPTE7Cgp2YXIgX19zdHIgPSBTdHJpbmcoX19vYmpfX3N0cik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ciAhPT0gX19vYmpfX3N0cikgewogICRFUlJPUignIzE6IF9fb2JqX19zdHIgPSAiY2FwcyI7IF9fc3RyID0gU3RyaW5nKF9fb2JqX19zdHIpOyBfX3N0ciA9PT0gX19vYmpfX3N0ci4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE2IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCAuMTIzNDUgYW5kIGFuYWxvZ291cyBudW1iZXJzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoLjEyMzQ1KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IFN0cmluZyguMTIzNDUpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiMC4xMjM0NSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyguMTIzNDUpOyBfX3N0ciA9PT0gIjAuMTIzNDUiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZyguMDEyMzQ1KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IFN0cmluZyguMDEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0ciAhPT0gIjAuMDEyMzQ1IikgewogICRFUlJPUignIzQ6IF9fc3RyID0gU3RyaW5nKC4wMTIzNDUpOyBfX3N0ciA9PT0gIjAuMDEyMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoLjAwMTIzNDUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzU6IF9fc3RyID0gU3RyaW5nKC4wMDEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0ciAhPT0gIjAuMDAxMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IFN0cmluZyguMDAxMjM0NSk7IF9fc3RyID09PSAiMC4wMDEyMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoLjAwMDAwMDEyMzQ1KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzcKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyM3OiBfX3N0ciA9IFN0cmluZyguMDAwMDAwMTIzNDUpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzgKaWYgKF9fc3RyICE9PSAiMS4yMzQ1ZS03IikgewogICRFUlJPUignIzg6IF9fc3RyID0gU3RyaW5nKC4wMDAwMDAxMjM0NSk7IF9fc3RyID09PSAiMS4yMzQ1ZS03Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE3IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCBudW1iZXJzIHRoYXQgaGF2ZSBtb3JlIHRoYW4gMSBzaWduaWZpY2FudCBkaWdpdCBhZnRlciBwb2ludCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKDEuMjM0NSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoMS4yMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIjEuMjM0NSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZygxLjIzNDUpOyBfX3N0ciA9PT0gIjEuMjM0NSIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyID0gU3RyaW5nKDEuMjM0NTY3ODkwKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IFN0cmluZygxLjIzNDU2Nzg5MCk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zdHIgIT09ICIxLjIzNDU2Nzg5IikgewogICRFUlJPUignIzQ6IF9fc3RyID0gU3RyaW5nKDEuMjM0NTY3ODkwKTsgX19zdHIgPT09ICIxLjIzNDU2Nzg5Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPSBTdHJpbmcoMS4yMzQ1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzU6IF9fc3RyID0gU3RyaW5nKDEuMjM0NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0ciAhPT0gIjEuMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IFN0cmluZygxLjIzNDUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09PSAiMS4yMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE4IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCBudW1iZXJzIHRoYXQgaGF2ZSBtb3JlIHRoYW4gMSBzaWduaWZpY2FudCBkaWdpdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7ICAKICAgICAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyID0gU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAiMWUrMjEiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09PSAiMWUrMjEiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IFN0cmluZygxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9PSAiMWUrMjIiKSB7CiAgJEVSUk9SKCcjNDogX19zdHIgPSBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyBfX3N0ciA9PT0gIjFlKzIyIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDE5IiwKCnBhdGg6ICIxNS41LjEuMSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgU3RyaW5nKCkgd2l0aCBBcnJheSBvZiBudW1iZXJzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KDEsMiwzKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KDEsMiwzKSk7IHR5cGVvZiBfX3N0ciA9PT0gInN0cmluZyIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT09ICIxLDIsMyIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsgX19zdHIgPT09ICIxLDIsMyIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDIiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcobnVsbCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IFN0cmluZyhudWxsKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IFN0cmluZyhudWxsKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIm51bGwiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBTdHJpbmcobnVsbCk7IF9fc3RyID09PSAibnVsbCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDMiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcodm9pZCAwKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKHZvaWQgMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcodm9pZCAwKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyh2b2lkIDApOyBfX3N0ciA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDQiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcodW5kZWZpbmVkKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKHVuZGVmaW5lZCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcodW5kZWZpbmVkKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyh1bmRlZmluZWQpOyBfX3N0ciA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDUiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoeCksIHdoZXJlIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoeCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9fc3RyID0gU3RyaW5nKHgpOyB0eXBlb2YgX19zdHIgPT09ICJzdHJpbmciLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzI6IHZhciB4OyBfX3N0ciA9IFN0cmluZyh4KTsgX19zdHIgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDYiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCwgQ2FsbCBTdHJpbmcoZXZhbCgpKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKGV2YWwoKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoZXZhbCgpKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyhldmFsKCkpOyBfX3N0ciA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDciLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoe30pIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBTdHJpbmcoe30pOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyID0gU3RyaW5nKHt9KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIltvYmplY3QgIisiT2JqZWN0IisiXSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZyh7fSk7IF9fc3RyID09PSAiW29iamVjdCBPYmplY3RdIi4gQWN0dWFsOiBfX3N0ciA9PT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.1.1_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTFfVDgiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcobmV3IEFycmF5KSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2xkX19BcnJheV9fcHJvdG90eXBlX190b1N0cmluZyA9IEFycmF5LnByb3RvdHlwZS50b1N0cmluZzsKCkFycmF5LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAiX19BUlJBWV9fIjt9OwoKdmFyIF9fc3RyID0gU3RyaW5nKG5ldyBBcnJheSk7CgovLyByZXN0b3JlIG9sZCB0b1N0cmluZyBtZXRob2QganVzdCBpbiBjYXNlCkFycmF5LnByb3RvdHlwZS50b1N0cmluZz1fX29sZF9fQXJyYXlfX3Byb3RvdHlwZV9fdG9TdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIl9fQVJSQVlfXyIpIHsKICAkRVJST1IoJyMyOiBBcnJheS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gIl9fQVJSQVlfXyI7fTsgX19zdHIgPSBTdHJpbmcobmV3IEFycmF5KTsgX19zdHIgPT09ICJfX0FSUkFZX18iLiBBY3R1YWw6IF9fc3RyID09PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.1.1_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4xLjFfQTJfVDEiLAoKcGF0aDogIjE1LjUuMS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gU3RyaW5nKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJzdHJpbmciKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBTdHJpbmcoKTsgdHlwZW9mIF9fc3RyID09PSAic3RyaW5nIi4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPT0gIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IFN0cmluZygpOyBfX3N0ciA9PT0gIiIuIEFjdHVhbDogX19zdHIgPT09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.1.1_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIGV4cHJlc3Npb24gXCJuZXcgU3RyaW5nXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSAiIikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZzsgX19zdHIgPT0gIiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKCBfX3N0ciA9PT0gIiIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IG5ldyBTdHJpbmc7IF9fc3RyICE9PSAiIicpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiIGFzIHRoZSBmdW5jdGlvbiBvYmplY3RcJ3MgcHJvdG90eXBlLnRvU3RyaW5nIHByb3BlcnR5IHdhcyBjaGFuZ2VkIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt9OwoKX19GQUNUT1JZLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAidG9zdHIifTsKCnZhciBfX29iaiA9IG5ldyBfX0ZBQ1RPUlk7Cgp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoX19vYmopOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0gInRvc3RyIikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7IF9fc3RyID09InRvc3RyIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDExIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiIGFmdGVyIGNoYW5naW5nIGZ1bmN0aW9uIG9iamVjdFwncyB2YWx1ZU9mIGFuZCB0b1N0cmluZyBwcm9wZXJ0aWVzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX29iaigpe307CgpfX29iai52YWx1ZU9mPWZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fTsKCl9fb2JqLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHt9O307Cgp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsKCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uIF9fb2JqKCl7fTsgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9InRydWUiKSB7CiAgJEVSUk9SKCcjMjogZnVuY3Rpb24gX19vYmooKXt9OyBfX3N0ciA9IG5ldyBTdHJpbmcoX19vYmopOyBfX3N0ciA9PSJ0cnVlIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiLCBhZnRlciBjaGFuZ2luZyB0aGUgZnVuY3Rpb24gb2JqZWN0IHRvU3RyaW5nIHByb3BlcnR5LCB3aGljaCBjYXVzZXMgZXhjZXB0aW9uIHRocm93IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciJ9fTsKCl9fb2JqLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdHJ1ZX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIifX07IF9fc3RyID0gbmV3IFN0cmluZyhfX29iaikgbGVhZCB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IGU9PT0iaW50b3N0ciIuIEFjdHVhbDogZT09PScrZSk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDEzIiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoZnVuY3Rpb24gb2JqZWN0KVwiIGFmdGVyIGNoYW5naW5nIGZ1bmN0aW9uIG9iamVjdFwncyB2YWx1ZU9mIHByb3BlcnR5LCB3aGljaCBjYXVzZXMgZXhjZXB0aW9uIHRocm93IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gZjsgZnVuY3Rpb24gZigpe319fTsKCl9fb2JqLnZhbHVlT2Y9ZnVuY3Rpb24oKXt0aHJvdyAiaW52YWx1ZW9mIn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhfX29iaik7CiAgJEVSUk9SKCcjMTogX19vYmoudmFsdWVPZj1mdW5jdGlvbigpe3Rocm93ICJpbnZhbHVlb2YifTsgX19zdHIgPSBuZXcgU3RyaW5nKF9fb2JqKSBsZWFkIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW52YWx1ZW9mIikgewogICAgJEVSUk9SKCcjMS4xOiBlPT09ImludmFsdWVvZiIuIEFjdHVhbDogZT09PScrZSk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE2IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoKVwiIGluaXRpYWxpemVkIHdpdGggLjEyMzQ1IGFuZCBvdGhlciBudW1iZXJzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBfX3N0ciA9bmV3IFN0cmluZyguMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPW5ldyBTdHJpbmcoLjEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID1uZXcgU3RyaW5nKC4xMjM0NSk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9IjAuMTIzNDUiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPW5ldyBTdHJpbmcoLjEyMzQ1KTsgX19zdHIgPT0iMC4xMjM0NSIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19zdHIgPW5ldyAgU3RyaW5nKC4wMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPW5ldyAgU3RyaW5nKC4wMTIzNDUpOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzMuNTogX19zdHIgPW5ldyAgU3RyaW5nKC4wMTIzNDUpOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0ciAhPSIwLjAxMjM0NSIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9bmV3ICBTdHJpbmcoLjAxMjM0NSk7IF9fc3RyID09IjAuMDEyMzQ1Ii4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9bmV3ICBTdHJpbmcoLjAwMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPW5ldyAgU3RyaW5nKC4wMDEyMzQ1KTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1LjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyM1LjU6IF9fc3RyID1uZXcgIFN0cmluZyguMDAxMjM0NSk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3RyICE9IjAuMDAxMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9bmV3ICBTdHJpbmcoLjAwMTIzNDUpOyBfX3N0ciA9PSIwLjAwMTIzNDUiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyID1uZXcgIFN0cmluZyguMDAwMDAwMTIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM3CmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjNzogX19zdHIgPW5ldyAgU3RyaW5nKC4wMDAwMDAxMjM0NSk7IHR5cGVvZiBfX3N0ciA9PT0gIm9iamVjdCIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNy41CmlmIChfX3N0ci5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjNy41OiBfX3N0ciA9bmV3ICBTdHJpbmcoLjAwMDAwMDEyMzQ1KTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjOAppZiAoX19zdHIgIT0iMS4yMzQ1ZS03IikgewogICRFUlJPUignIzg6IF9fc3RyID1uZXcgIFN0cmluZyguMDAwMDAwMTIzNDUpOyBfX3N0ciA9PSIxLjIzNDVlLTciLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE3IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoKVwiIGluaXRpYWxpemVkIHdpdGggbnVtYmVycyB0aGF0IGhhdmUgbW9yZSB0aGFuIDEgc2lnbmlmaWNhbnQgZGlnaXQgZm9sbG93aW5nIHRoZSBwb2ludCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gbmV3IFN0cmluZygxLjIzNDUpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMjM0NSk7IHR5cGVvZiBfX3N0ciA9PT0gIm9iamVjdCIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMS41CmlmIChfX3N0ci5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMS41OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1KTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iMS4yMzQ1IikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZygxLjIzNDUpOyBfX3N0ciA9PSIxLjIzNDUiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyID0gbmV3IFN0cmluZygxLjIzNDU2Nzg5MCk7Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMzOiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1Njc4OTApOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzMuNTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMjM0NTY3ODkwKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zdHIgIT0iMS4yMzQ1Njc4OSIpIHsKICAkRVJST1IoJyM0OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1Njc4OTApOyBfX3N0ciA9PSIxLjIzNDU2Nzg5Ii4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjNTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMjM0NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1LjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyM1LjU6IF9fc3RyID0gbmV3IFN0cmluZygxLjIzNDUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3RyICE9IjEuMjM0NSIpIHsKICAkRVJST1IoJyM2OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4yMzQ1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyBfX3N0ciA9PSIxLjIzNDUiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE4IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0ZSBzdHJpbmcgb2JqZWN0IHdpdGggXCJuZXcgU3RyaW5nKClcIiBpbml0aWFsaXplZCB3aXRoIG51bWJlcnMgdGhhdCBoYXZlIG1vcmUgdGhhbiAxIHNpZ25pZmljYW50IGRpZ2l0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDApOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSIxZSsyMSIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09IjFlKzIxIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0ciA9IG5ldyBTdHJpbmcoMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDApOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMzogX19zdHIgPSBuZXcgU3RyaW5nKDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMzLjU6IF9fc3RyID0gbmV3IFN0cmluZygxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyICE9IjFlKzIyIikgewogICRFUlJPUignIzQ6IF9fc3RyID0gbmV3IFN0cmluZygxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCk7IF9fc3RyID09IjFlKzIyIi4gQWN0dWFsOiBfX3N0ciA9PScrX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDE5IiwKCnBhdGg6ICIxNS41LjIuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoKVwiIGluaXRpYWxpemVkIHdpdGggQXJyYXkgb2YgbnVtYmVycyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyID0gbmV3IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhuZXcgQXJyYXkoMSwyLDMpKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iMSwyLDMiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBuZXcgU3RyaW5nKG5ldyBBcnJheSgxLDIsMykpOyBfX3N0ciA9PSIxLDIsMyIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDIiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZygpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZygpOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSIiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBuZXcgU3RyaW5nKCk7IF9fc3RyID09IiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIF9fc3RyID09PSAiIikgewogICRFUlJPUignIzM6IF9fc3RyID0gbmV3IFN0cmluZygpOyBfX3N0ciAhPT0gIiInKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.2.1_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDMiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhcIlwiKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoIiIpOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKCIiKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iIikgewogICRFUlJPUignIzI6IF9fc3RyID0gbmV3IFN0cmluZygiIik7IF9fc3RyID09IiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIF9fc3RyID09PSAiIikgewogICRFUlJPUignIzM6IF9fc3RyID0gbmV3IFN0cmluZygiIik7IF9fc3RyICE9PSAiIicpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDQiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoMS4wKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKDEuMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKDEuMCk7IHR5cGVvZiBfX3N0ciA9PT0gIm9iamVjdCIuIEFjdHVhbDogdHlwZW9mIF9fc3RyID09PScrdHlwZW9mIF9fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMS41CmlmIChfX3N0ci5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMS41OiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4wKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0xLjArIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoMS4wKTsgX19zdHIgPT0xLjArIiIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDUiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhOYU4pXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmcoTmFOKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoTmFOKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhOYU4pOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSgxLyJzIikrIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoTmFOKTsgX19zdHIgPT0oMS8icyIpKyIiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDYiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhmYWxzZSlcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gbmV3IFN0cmluZyhmYWxzZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHIgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHIgPSBuZXcgU3RyaW5nKGZhbHNlKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhmYWxzZSk7IF9fc3RyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcuIEFjdHVhbDogX19zdHIuY29uc3RydWN0b3IgPT09JytfX3N0ci5jb25zdHJ1Y3RvciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyICE9ZmFsc2UrIiIpIHsKICAkRVJST1IoJyMyOiBfX3N0ciA9IG5ldyBTdHJpbmcoZmFsc2UpOyBfX3N0ciA9PWZhbHNlKyIiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDciLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyh7fSlcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RvcmVkX19PYmplY3RfX3Byb3RvdHlwZV9fdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwoKT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAiU0hJRlRFRCJ9OwoKdmFyIF9fc3RyID0gbmV3IFN0cmluZyh7fSk7CgpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nID0gX19zdG9yZWRfX09iamVjdF9fcHJvdG90eXBlX190b1N0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoe30pOyB0eXBlb2YgX19zdHIgPT09ICJvYmplY3QiLiBBY3R1YWw6IHR5cGVvZiBfX3N0ciA9PT0nK3R5cGVvZiBfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEuNQppZiAoX19zdHIuY29uc3RydWN0b3IgIT09IFN0cmluZykgewogICRFUlJPUignIzEuNTogX19zdHIgPSBuZXcgU3RyaW5nKHt9KTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iU0hJRlRFRCIpIHsKICAkRVJST1IoJyMyOiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuICJTSElGVEVEIn07IF9fc3RyID0gbmV3IFN0cmluZyh7fSk7IF9fc3RyID09IlNISUZURUQiLiBBY3R1YWw6IF9fc3RyID09JytfX3N0ciApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.2.1_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDgiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhmdW5jdGlvbigpe30pXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0b3JlZF9fRnVuY3Rpb25fX3Byb3RvdHlwZV9fdG9TdHJpbmcgPSBGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7CgpGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gIlNISUZURUQifTsKCnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KTsKCkZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZyA9IF9fc3RvcmVkX19GdW5jdGlvbl9fcHJvdG90eXBlX190b1N0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3N0ciAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0ciA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe30pOyBfX3N0ci5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9fc3RyLmNvbnN0cnVjdG9yID09PScrX19zdHIuY29uc3RydWN0b3IgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0ciAhPSJTSElGVEVEIikgewogICRFUlJPUignIzI6IEZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAiU0hJRlRFRCJ9OyBfX3N0ciA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KTsgX19zdHIgPT0iU0hJRlRFRCIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTFfVDkiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhmdW5jdGlvbigpe3JldHVybiBbMSwyLDNdfSgpKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSBuZXcgU3RyaW5nKGZ1bmN0aW9uKCl7cmV0dXJuIFsxLDIsM119KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe3JldHVybiBbMSwyLDNdfSgpKTsgdHlwZW9mIF9fc3RyID09PSAib2JqZWN0Ii4gQWN0dWFsOiB0eXBlb2YgX19zdHIgPT09Jyt0eXBlb2YgX19zdHIgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxLjUKaWYgKF9fc3RyLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcpIHsKICAkRVJST1IoJyMxLjU6IF9fc3RyID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe3JldHVybiBbMSwyLDNdfSgpKTsgX19zdHIuY29uc3RydWN0b3IgPT09IFN0cmluZy4gQWN0dWFsOiBfX3N0ci5jb25zdHJ1Y3RvciA9PT0nK19fc3RyLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHIgIT0iMSwyLDMiKSB7CiAgJEVSUk9SKCcjMjogX19zdHIgPSBuZXcgU3RyaW5nKGZ1bmN0aW9uKCl7cmV0dXJuIFsxLDIsM119KCkpOyBfX3N0ciA9PSIxLDIsMyIuIEFjdHVhbDogX19zdHIgPT0nK19fc3RyICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.2.1_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTJfVDEiLAoKcGF0aDogIjE1LjUuMi4xLCAxNS41LjMuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoc3RyaW5nKVwiIHRvIGNoZWNrIHByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyX19vYmogPSBuZXcgU3RyaW5nKCJhYmJhIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX3N0cl9fb2JqKSkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJfX29iaiA9IG5ldyBTdHJpbmcoImFiYmEiKTsgU3RyaW5nLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9fc3RyX19vYmopPT09dHJ1ZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgogfQp9KTsKCg==","id":"S15.5.2.1_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTJfVDIiLAoKcGF0aDogIjE1LjUuMi4xLCAxNS41LjMuMSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHN0cmluZyBvYmplY3Qgd2l0aCBcIm5ldyBTdHJpbmcoc3RyaW5nKVwiIGFkZGluZyBjdXN0b20gcHJvcGVydHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2hvY2tpbmcgYmx1ZSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJfX29ialsiX19jdXN0b21fX3Byb3AiXSE9PXVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2hvY2tpbmcgYmx1ZSIpOyBfX3N0cl9fb2JqWyJfX2N1c3RvbV9fcHJvcCJdPT09dW5kZWZpbmVkLiBBY3R1YWw6IF9fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl09PT0nK19fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl0pOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KClN0cmluZy5wcm90b3R5cGUuX19jdXN0b21fX3Byb3AgPSAiYm9yIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl0hPT0iYm9yIikgewogICRFUlJPUignIzI6IHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2hvY2tpbmcgYmx1ZSIpOyBTdHJpbmcucHJvdG90eXBlLl9fY3VzdG9tX19wcm9wID0gImJvciI7IF9fc3RyX19vYmpbIl9fY3VzdG9tX19wcm9wIl09PT0iYm9yIi4gQWN0dWFsOiBfX3N0cl9fb2JqWyJfX2N1c3RvbV9fcHJvcCJdPT09JytfX3N0cl9fb2JqWyJfX2N1c3RvbV9fcHJvcCJdKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKCiB9Cn0pOwoK","id":"S15.5.2.1_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4yLjFfQTMiLAoKcGF0aDogIjE1LjUuMi4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc3RyaW5nIG9iamVjdCB3aXRoIFwibmV3IFN0cmluZyhzdHJpbmcpXCIgYW5kIGNoYW5naW5nIHRvU3RyaW5nIHByb3BlcnR5IHRvIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9fb2JqID0gbmV3IFN0cmluZygic2VhbWFpZCIpOwoKX19zdHJfX29iai50b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cl9fb2JqLnRvU3RyaW5nKCkgIT09ICJbb2JqZWN0ICIrIlN0cmluZyIrIl0iKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyX19vYmogPSBuZXcgU3RyaW5nKCJzZWFtYWlkIik7IF9fc3RyX19vYmoudG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOyBfX3N0cl9fb2JqLnRvU3RyaW5nKCkgPT09ICJbb2JqZWN0IFN0cmluZ10iLiBBY3R1YWw6IF9fc3RyX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.2.1_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTEiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcuaGFzT3duUHJvcGVydHkoXCdwcm90b3R5cGVcJykiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcuaGFzT3duUHJvcGVydHkoXCdwcm90b3R5cGVcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.3.1_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTIiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZSBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLmhhc093blByb3BlcnR5KFwncHJvdG90eXBlXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzEKaWYgKFN0cmluZy5wcm9wZXJ0eUlzRW51bWVyYWJsZSgncHJvdG90eXBlJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvcGVydHlJc0VudW1lcmFibGUoXCdwcm90b3R5cGVcJykgcmV0dXJuIGZhbHNlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzIKdmFyIGNvdW50PTA7Cgpmb3IgKHAgaW4gU3RyaW5nKXsKICBpZiAocD09PSJwcm90b3R5cGUiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nKXsgaWYgKHA9PT0icHJvdG90eXBlIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiBjb3VudCA9PT0nK2NvdW50ICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.3.1_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTMiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZSBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKSkgewogICRGQUlMKCcjMTogU3RyaW5nLmhhc093blByb3BlcnR5KFwncHJvdG90eXBlXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpkZWxldGUgU3RyaW5nLnByb3RvdHlwZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSkpIHsKICAkRVJST1IoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZTsgU3RyaW5nLmhhc093blByb3BlcnR5KFwncHJvdG90eXBlXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.3.1_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjFfQTQiLAoKcGF0aDogIjE1LjUuMy4xLCAxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiB2YXJ5aW5nIHRoZSBTdHJpbmcucHJvdG90eXBlIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5oYXNPd25Qcm9wZXJ0eSgncHJvdG90eXBlJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcuaGFzT3duUHJvcGVydHkoXCdwcm90b3R5cGVcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGU7CgpTdHJpbmcucHJvdG90eXBlID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZTsgU3RyaW5nLnByb3RvdHlwZSA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlID09PSBfX29iai4gQWN0dWFsOiBTdHJpbmcucHJvdG90eXBlID09PScrU3RyaW5nLnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.3.1_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTEiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLmZyb21DaGFyQ29kZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBTdHJpbmcuZnJvbUNoYXJDb2RlICE9PSAiZnVuY3Rpb24iKSB7CiAgJEVSUk9SKCcjMTogdHlwZW9mIFN0cmluZy5mcm9tQ2hhckNvZGUgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIFN0cmluZy5mcm9tQ2hhckNvZGUgPT09Jyt0eXBlb2YgU3RyaW5nLmZyb21DaGFyQ29kZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoU3RyaW5nLmhhc093blByb3BlcnR5KCJmcm9tQ2hhckNvZGUiKSkpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcuaGFzT3duUHJvcGVydHkoImZyb21DaGFyQ29kZSIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLmhhc093blByb3BlcnR5KCJmcm9tQ2hhckNvZGUiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChTdHJpbmcuZnJvbUNoYXJDb2RlLmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzM6IFN0cmluZy5mcm9tQ2hhckNvZGUubGVuZ3RoID09PSAxLiBBY3R1YWw6IFN0cmluZy5mcm9tQ2hhckNvZGUubGVuZ3RoID09PScrU3RyaW5nLmZyb21DaGFyQ29kZS5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.3.2_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTIiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcuZnJvbUNoYXJDb2RlKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5mcm9tQ2hhckNvZGUoKSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcuZnJvbUNoYXJDb2RlICgpIHJldHVybnMgZW1wdHkgc3RyaW5nLiBBY3R1YWw6ICcrU3RyaW5nLmZyb21DaGFyQ29kZSgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.3.2_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTNfVDEiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBTdHJpbmcuZnJvbUNoYXJDb2RlKDY1LDY2LDY2LDY1KSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLmZyb21DaGFyQ29kZSg2NSw2Niw2Niw2NSkgIT09ICJBQkJBIikgewogICRFUlJPUignIzE6IFN0cmluZy5mcm9tQ2hhckNvZGUoNjUsNjYsNjYsNjUpID09PSAiQUJCQSIuIEFjdHVhbDogU3RyaW5nLmZyb21DaGFyQ29kZSg2NSw2Niw2Niw2NSkgPT09JytTdHJpbmcuZnJvbUNoYXJDb2RlKDY1LDY2LDY2LDY1KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.3.2_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTNfVDIiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIGZ1bmN0aW9uIHZhcmlhYmxlLCB0aGF0IGVxdWFsIFN0cmluZy5mcm9tQ2hhckNvZGUsIGRlbGV0ZSBvcmlnaW5hbCBTdHJpbmcuZnJvbUNoYXJDb2RlIGFuZCB1c2UgY3JlYXRlZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fZmNjX19mdW5jID0gU3RyaW5nLmZyb21DaGFyQ29kZTsKCmRlbGV0ZSBTdHJpbmcuZnJvbUNoYXJDb2RlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mY2NfX2Z1bmMoNjUsNjYsNjYsNjUpICE9PSAiQUJCQSIpIHsKICAkRVJST1IoJyMxOiBfX2ZjY19fZnVuYyA9IFN0cmluZy5mcm9tQ2hhckNvZGU7IGRlbGV0ZSBTdHJpbmcuZnJvbUNoYXJDb2RlOyBfX2ZjY19fZnVuYyg2NSw2Niw2Niw2NSkgPT09ICJBQkJBIi4gQWN0dWFsOiBfX2ZjY19fZnVuYyg2NSw2Niw2Niw2NSkgPT09JytfX2ZjY19fZnVuYyg2NSw2Niw2Niw2NSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.3.2_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zLjJfQTQiLAoKcGF0aDogIjE1LjUuMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgXCJuZXcgU3RyaW5nLmZyb21DaGFyQ29kZVwiIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19mY2NfX2Z1bmMgPSBTdHJpbmcuZnJvbUNoYXJDb2RlOwoKZGVsZXRlIFN0cmluZy5mcm9tQ2hhckNvZGU7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIF9fb2JqID0gbmV3IF9fZmNjX19mdW5jKDY1LDY2LDY2LDY1KTsKICAkRkFJTCgnIzE6IF9fZmNjX19mdW5jID0gU3RyaW5nLmZyb21DaGFyQ29kZTsgdmFyIF9fb2JqID0gbmV3IF9fZmNjX19mdW5jKDY1LDY2LDY2LDY1KSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.3.2_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zX0ExIiwKCnBhdGg6ICIxNS41LjMsIDE1LjUuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMKaWYgKFN0cmluZy5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJ1N0cmluZyBoYXMgbGVuZ3RoIHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIDEuIEFjdHVhbDogU3RyaW5nLmxlbmd0aD09PScrU3RyaW5nLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.3_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zX0EyX1QxIiwKCnBhdGg6ICIxNS41LjMsIDE1LjUuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIEZ1bmN0aW9uLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKFN0cmluZykiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMKaWYgKCEoRnVuY3Rpb24ucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nKSkpIHsKICAkRVJST1IoJyMxOiBGdW5jdGlvbi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihTdHJpbmcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrRnVuY3Rpb24ucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.3_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS4zX0EyX1QyIiwKCnBhdGg6ICIxNS41LjMsIDE1LjUuNCIsCgpkZXNjcmlwdGlvbjogIkFkZCBjdXN0b20gcHJvcGVydHkgdG8gRnVuY3Rpb24ucHJvdG90eXBlIGFuZCBjaGVjayBpdCBhdCBTdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIEZ1bmN0aW9uLnByb3RvdHlwZS5pbmRpY2F0b3IgPSAxOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIwppZiAoU3RyaW5nLmluZGljYXRvciAhPT0gMSkgewogICRFUlJPUignIzE6IEZ1bmN0aW9uLnByb3RvdHlwZS5pbmRpY2F0b3IgPSAxOyBTdHJpbmcuaW5kaWNhdG9yID09PSAxLiBBY3R1YWw6IFN0cmluZy5pbmRpY2F0b3IgPT09JytTdHJpbmcuaW5kaWNhdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.3_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjFfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IFN0cmluZy5wcm90b3R5cGUuY29uc3RydWN0b3IgPT09JytTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjFfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yIG9iamVjdCBhbmQgY2hlY2sgaXQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2NvbnN0ciA9IFN0cmluZy5wcm90b3R5cGUuY29uc3RydWN0b3I7Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX2NvbnN0cigiY2hvb3Npbmcgb25lIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMAppZiAoX19pbnN0YW5jZSAhPSJjaG9vc2luZyBvbmUiKSB7CiAgJEVSUk9SKCcjMDogX19jb25zdHIgPSBTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yOyBfX2luc3RhbmNlID0gbmV3IF9fY29uc3RyKCJjaG9vc2luZyBvbmUiKTsgX19pbnN0YW5jZSA9PSJjaG9vc2luZyBvbmUiLiBBY3R1YWw6IF9faW5zdGFuY2UgPT0nK19faW5zdGFuY2UgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25zdHJ1Y3RvciAhPT0gU3RyaW5nKSB7CiAgJEVSUk9SKCcjMTogX19jb25zdHIgPSBTdHJpbmcucHJvdG90eXBlLmNvbnN0cnVjdG9yOyBfX2luc3RhbmNlID0gbmV3IF9fY29uc3RyKCJjaG9vc2luZyBvbmUiKTsgX19pbnN0YW5jZS5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nLiBBY3R1YWw6IF9faW5zdGFuY2UuY29uc3RydWN0b3IgPT09JytfX2luc3RhbmNlLmNvbnN0cnVjdG9yICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzIKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9faW5zdGFuY2UpKSkgewogICRFUlJPUignIzI6IF9fY29uc3RyID0gU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjsgX19pbnN0YW5jZSA9IG5ldyBfX2NvbnN0cigiY2hvb3Npbmcgb25lIik7IFN0cmluZy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2luc3RhbmNlKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2luc3RhbmNlKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzMKdmFyIF9fdG9fc3RyaW5nX3Jlc3VsdCA9ICdbb2JqZWN0ICcrICdTdHJpbmcnICsnXSc7CgpkZWxldGUgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZzsKCmlmIChfX2luc3RhbmNlLnRvU3RyaW5nKCkgIT09IF9fdG9fc3RyaW5nX3Jlc3VsdCkgewogICRFUlJPUignIzM6IF9fY29uc3RyID0gU3RyaW5nLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjsgX19pbnN0YW5jZSA9IG5ldyBfX2NvbnN0cigiY2hvb3Npbmcgb25lIik7IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOyBfX2luc3RhbmNlLnRvU3RyaW5nKCkgPT09IF9fdG9fc3RyaW5nX3Jlc3VsdC4gQWN0dWFsOiBfX2luc3RhbmNlLnRvU3RyaW5nKCkgPT09JytfX2luc3RhbmNlLnRvU3RyaW5nKCkrJyBfX3RvX3N0cmluZ19yZXN1bHQgPT09JytfX3RvX3N0cmluZ19yZXN1bHQgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.1_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcobnVtYmVyKSBhbmQgY2hlY2sgaXRgcyBtZXRob2QgdG9TdHJpbmcoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKDEpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgIT09ICIiKzEpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygxKTsgX19zdHJpbmdfX29iai50b1N0cmluZygpID09PSAiIisxLiBBY3R1YWw6IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyaW5nX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.2_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcoYm9vbGVhbikgYW5kIGNoZWNrIGl0YHMgbWV0aG9kIHRvU3RyaW5nKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyh0cnVlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAoX19zdHJpbmdfX29iai50b1N0cmluZygpICE9PSAiIit0cnVlKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcodHJ1ZSk7IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0gIiIrdHJ1ZS4gQWN0dWFsOiBfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgPT09JytfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.2_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcoc3RyaW5nKSBhbmQgY2hlY2sgaXRgcyBtZXRob2QgdG9TdHJpbmcoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKCJtZXRhbCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgIT09ICJtZXRhbCIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygibWV0YWwiKTsgX19zdHJpbmdfX29iai50b1N0cmluZygpID09PSAibWV0YWwiLiBBY3R1YWw6IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyaW5nX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.2_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpIGFuZCBjaGVjayBpdGBzIG1ldGhvZCB0b1N0cmluZygpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOyBfX3N0cmluZ19fb2JqLnRvU3RyaW5nKCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IF9fc3RyaW5nX19vYmoudG9TdHJpbmcoKSA9PT0nK19fc3RyaW5nX19vYmoudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.2_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTJfVDEiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdmFyaWFibGUgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZyBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fdG9TdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fdG9TdHJpbmcgIT09ICJmdW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiBfX3RvU3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZzsgdHlwZW9mIF9fdG9TdHJpbmcgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fdG9TdHJpbmcgPT09Jyt0eXBlb2YgX190b1N0cmluZyApOyAKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCnRyeSB7CiAgdmFyIHggPSBfX3RvU3RyaW5nKCk7CiAgJEZBSUwoJyMyOiAiX190b1N0cmluZyA9IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmc7IHZhciB4ID0gX190b1N0cmluZygpOyIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMyLjE6ICJfX3RvU3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZzsgdmFyIHggPSBfX3RvU3RyaW5nKCk7IiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbi4gRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.2_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTJfVDIiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIG9iamVjdCBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmo9e3RvU3RyaW5nIDogU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZ307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19vYmpbInRvU3RyaW5nIl0gIT09ICJmdW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19vYmo9e3RvU3RyaW5nIDogU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZ307IHR5cGVvZiBfX29ialsidG9TdHJpbmciXSA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19vYmpbInRvU3RyaW5nIl0gPT09Jyt0eXBlb2YgX19vYmpbInRvU3RyaW5nIl0gKTsgCn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp0cnkgewogIHZhciB4ID0gKF9fb2JqID09IDEpOwogICRGQUlMKCcjMjogInZhciB4ID0gKF9fb2JqID09IDEpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzIuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.2_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTNfVDEiLAoKcGF0aDogIjE1LjUuNC4yLCAxNS41LjQuMyIsCgpkZXNjcmlwdGlvbjogIkNyZWF0ZSBuZXcgU3RyaW5nKCkgd2l0aCB2YXJpb3VzIGFyZ3VtZW50cyBhbmQgY29tcGFyZSByZXR1cm5lZCByZXN1bHRzIG9mIHRvU3RyaW5nKCkgYW5kIHZhbHVlT2YoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy9DSEVDSyMxCnZhciBzdHIgPSBuZXcgU3RyaW5nKCk7CmlmKCEoc3RyLnZhbHVlT2YoKSA9PSBzdHIudG9TdHJpbmcoKSkpCiAgJEVSUk9SKCcjMTogc3RyID0gbmV3IFN0cmluZygpLHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCknKTsKCi8vQ0hFQ0sjMgpzdHIgPSBuZXcgU3RyaW5nKHRydWUpOwppZighKHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCkpKQogICRFUlJPUignIzI6IHN0ciA9IG5ldyBTdHJpbmcodHJ1ZSksc3RyLnZhbHVlT2YoKSA9PSBzdHIudG9TdHJpbmcoKScpOwoKLy9DSEVDSyMzCnN0ciA9IG5ldyBTdHJpbmcoZmFsc2UpOwppZighKHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCkpKQogICRFUlJPUignIzM6IHN0ciA9IG5ldyBTdHJpbmcoZmFsc2UpLHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCknKTsKCi8vQ0hFQ0sjNApzdHIgPSBuZXcgU3RyaW5nKE1hdGguUEkpOwppZighKHN0ci52YWx1ZU9mKCkgPT0gc3RyLnRvU3RyaW5nKCkpKQogICRFUlJPUignIzQ6IHN0ciA9IG5ldyBTdHJpbmcoTWF0aC5QSSksc3RyLnZhbHVlT2YoKSA9PSBzdHIudG9TdHJpbmcoKScpOwoKIH0KfSk7Cgo=","id":"S15.5.4.2_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjJfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZy5sZW5ndGggcHJvcGVydHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZy5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykhPT10cnVlKXsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpPT09dHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9TdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KZWxzZXsKLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nLmxlbmd0aCE9PTApCiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZy5sZW5ndGg9PT0wLiBBY3R1YWw6IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcubGVuZ3RoPT09JytTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nLmxlbmd0aCk7IAp9CgogfQp9KTsKCg==","id":"S15.5.4.2_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZygxKSBhbmQgY2hlY2sgaXRgcyB2YWx1ZU9mKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygxKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAoX19zdHJpbmdfX29iai52YWx1ZU9mKCkgIT09ICIiKzEpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZygxKTsgX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09ICIiKzEuIEFjdHVhbDogX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09JytfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.3_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZyh0cnVlKSBhbmQgY2hlY2sgaXRgcyB2YWx1ZU9mKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyh0cnVlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAoX19zdHJpbmdfX29iai52YWx1ZU9mKCkgIT09ICIiK3RydWUpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyh0cnVlKTsgX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09ICIiK3RydWUuIEFjdHVhbDogX19zdHJpbmdfX29iai52YWx1ZU9mKCkgPT09JytfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.3_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZyhzdHJpbmcpIGFuZCBjaGVjayBpdGBzIHZhbHVlT2YoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKCJtZXRhbCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSAhPT0gIm1ldGFsIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nX19vYmogPSBuZXcgU3RyaW5nKCJtZXRhbCIpOyBfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSA9PT0gIm1ldGFsIi4gQWN0dWFsOiBfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSA9PT0nK19fc3RyaW5nX19vYmoudmFsdWVPZigpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.3_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIFN0cmluZyBvYmplY3QgYXMgbmV3IFN0cmluZyhmdW5jdGlvbigpe30oKSkgYW5kIGNoZWNrIGl0YHMgdmFsdWVPZigpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmdfX29iaiA9IG5ldyBTdHJpbmcoZnVuY3Rpb24oKXt9KCkpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmIChfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSAhPT0gInVuZGVmaW5lZCIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZ19fb2JqID0gbmV3IFN0cmluZyhmdW5jdGlvbigpe30oKSk7IF9fc3RyaW5nX19vYmoudmFsdWVPZigpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiBfX3N0cmluZ19fb2JqLnZhbHVlT2YoKSA9PT0nK19fc3RyaW5nX19vYmoudmFsdWVPZigpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.3_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTJfVDEiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdmFyaWFibGUgU3RyaW5nLnByb3RvdHlwZS52YWx1ZU9mIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX192YWx1ZU9mID0gU3RyaW5nLnByb3RvdHlwZS52YWx1ZU9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fdmFsdWVPZiAhPT0gImZ1bmN0aW9uIikgewogICRFUlJPUignIzE6IF9fdmFsdWVPZiA9IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZjsgdHlwZW9mIF9fdmFsdWVPZiA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX192YWx1ZU9mID09PScrdHlwZW9mIF9fdmFsdWVPZiApOyAKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCnRyeSB7CiAgdmFyIHggPSBfX3ZhbHVlT2YoKTsKICAkRkFJTCgnIzI6ICJfX3ZhbHVlT2YgPSBTdHJpbmcucHJvdG90eXBlLnZhbHVlT2Y7IHZhciB4ID0gX192YWx1ZU9mKCkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoIShlIGluc3RhbmNlb2YgVHlwZUVycm9yKSkgewogICAgJEVSUk9SKCcjMi4xOiBFeGNlcHRpb24gaXMgaW5zdGFuY2Ugb2YgVHlwZUVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.3_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjNfQTJfVDIiLAoKcGF0aDogIjE1LjUuNC4zIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIG9iamVjdCBTdHJpbmcucHJvdG90eXBlLnZhbHVlT2YgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaj17dmFsdWVPZiA6IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19vYmpbInZhbHVlT2YiXSAhPT0gImZ1bmN0aW9uIikgewogICRFUlJPUignIzE6IHZhciBfX29iaj17dmFsdWVPZiA6IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZn07IHR5cGVvZiBfX29ialsidmFsdWVPZiJdID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX29ialsidmFsdWVPZiJdID09PScrdHlwZW9mIF9fb2JqWyJ2YWx1ZU9mIl0gKTsgCn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp0cnkgewogIHZhciB4ID0gKF9fb2JqID09IDEpOwogICRGQUlMKCcjMjogInZhciBfX29iaj17dmFsdWVPZiA6IFN0cmluZy5wcm90b3R5cGUudmFsdWVPZn07IHZhciB4ID0gKF9fb2JqID09IDEpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzIuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.3_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40X0ExIiwKCnBhdGg6ICIxNS41LjQiLAoKZGVzY3JpcHRpb246ICJmaXJzdCB3ZSBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZyBjYXVzZSBpdCBvdmVycmlkZXMgT2JqZWN0IHByb3RvdHlwZSB0b1N0cmluZy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZygpICE9PSAiW29iamVjdCAiKyJTdHJpbmciKyJdIikgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOyBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nKCkgPT09ICJbb2JqZWN0ICIrIlN0cmluZyIrIl0iLiBBY3R1YWw6IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSA9PT0nK1N0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40X0EyIiwKCnBhdGg6ICIxNS41LjQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlICE9IiIpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlID09IiIuIEFjdHVhbDogU3RyaW5nLnByb3RvdHlwZSA9PScrU3RyaW5nLnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40X0EzIiwKCnBhdGg6ICIxNS41LjQsIDE1LjIuMy4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKFN0cmluZy5wcm90b3R5cGUpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihTdHJpbmcucHJvdG90eXBlKSkpIHsKICAkRVJST1IoJyMxOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nLnByb3RvdHlwZSkgcmV0dXJuIHRydWUuIEFjdHVhbDogJytPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoU3RyaW5nLnByb3RvdHlwZSkpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b1N0cmluZygpICE9ICJbb2JqZWN0ICIrIlN0cmluZyIrIl0iKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmc7IFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSA9PSAiW29iamVjdCAiKyJTdHJpbmciKyJdIi4gQWN0dWFsOiBTdHJpbmcucHJvdG90eXBlLnRvU3RyaW5nKCkgPT0nK1N0cmluZy5wcm90b3R5cGUudG9TdHJpbmcoKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExMCIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExMSIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUubWF0Y2gubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLm1hdGNoKHRydWUpWzBdICE9PSAidHJ1ZSIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7ICBfX2luc3RhbmNlLm1hdGNoKHRydWUpWzBdID09PSAidHJ1ZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLm1hdGNoKHRydWUpWzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBtYXRjaCAocmVnZXhwKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhcmd1bWVudCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19zdHIgPSAiQUJCXHUwMDQxQkFCQUIiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIGlmIChtYXRjaChfX29iailbMF0gIT09IkFCIikgewogICAgICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsgbWF0Y2goX19vYmopWzBdID09PSJBQiIuIEFjdHVhbDogJyttYXRjaChfX29iailbMF0gKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdGhpcyBvYmplY3QgYXMgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbnRvc3RyIjt9fQp2YXIgX19zdHIgPSB7c3RyX186IkFCQlx1MDA0MUJBQkFCIn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgd2l0aChzdHJfXyl7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHZhciB4ID0gbWF0Y2goX19vYmopOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBtYXRjaChfX29iaikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdGhpcyBvYmplY3QgYXMgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KdmFyIF9fc3RyID0gbmV3IFN0cmluZygiQUJCXHUwMDQxQkFCQUIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB0cnkgewogICAgICB2YXIgeCA9IG1hdGNoKF9fb2JqKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBtYXRjaChfX29iaikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgbWF0Y2ggKHJlZ2V4cCkgZnVuY3Rpb24gd2l0aCB0aGlzIG9iamVjdCBhcyBhcmd1bWVudCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQlx1MDAzMUFCQUJcdTAwMzFCQkFBIi5tYXRjaChfX29iailbMF0gIT09IjEiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyAiQUJCXFx1MDA0MUJcXHUwMDMxQUJBQlxcdTAwMzFCQkFBIi5tYXRjaChfX29iailbMF0gPT09IjEiLiBBY3R1YWw6ICcrKCJBQkJcdTAwNDFCXHUwMDMxQUJBQlx1MDAzMUJCQUEiLm1hdGNoKF9fb2JqKVswXSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKCJBQkJcdTAwNDFCXHUwMDMxQUJBQlx1MDAzMUJCQUEiLm1hdGNoKF9fb2JqKS5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMzOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07ICJBQkJcXHUwMDQxQlxcdTAwMzFBQkFCXFx1MDAzMUJCQUEiLm1hdGNoKF9fb2JqKS5sZW5ndGggPT09IDEuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJcdTAwMzFBQkFCXHUwMDMxQkJBQSIubWF0Y2goX19vYmopLmxlbmd0aCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEwIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBtYXRjaCAocmVnZXhwKSBmdW5jdGlvbiB3aXRoIFJlZ0V4cCBvYmplY3QgYXMgYXJndW1lbnQgZnJvbSBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIjc3Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5tYXRjaChfX3JlZylbMF0gIT09ICI3NyIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCI3NyIpOyAiQUJCXFx1MDA0MUJBQkFCXFx1MDAzN1xcdTAwMzdCQkFBIi5tYXRjaChfX3JlZylbMF0gPT09ICI3NyIuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJBQkFCXHUwMDM3XHUwMDM3QkJBQSIubWF0Y2goX19yZWcpWzBdKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFuLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLm1hdGNoID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UubWF0Y2goZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSgpKVswXSAhPT0gImZhbHNlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7ICBfX2luc3RhbmNlLm1hdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSlbMF0gPT09ICJmYWxzZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLm1hdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSlbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGhvdXQgYXJndW1lbnRzIG9mIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbWF0Y2hlZCA9ICIiLm1hdGNoKCk7Cgp2YXIgX19leHBlY3RlZCA9IFJlZ0V4cCgpLmV4ZWMoIiIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19tYXRjaGVkID0gIiIubWF0Y2goKTsgX19leHBlY3RlZCA9IFJlZ0V4cCgpLmV4ZWMoIiIpOyBfX21hdGNoZWQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbWF0Y2hlZC5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbWF0Y2hlZCA9ICIiLm1hdGNoKCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoKS5leGVjKCIiKTsgX19tYXRjaGVkLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19tYXRjaGVkLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX21hdGNoZWQuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX21hdGNoZWQgPSAiIi5tYXRjaCgpOyBfX2V4cGVjdGVkID0gUmVnRXhwKCkuZXhlYygiIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fbWF0Y2hlZCA9ICIiLm1hdGNoKCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoKS5leGVjKCIiKTsgX19tYXRjaGVkWycraW5kZXgrJ109PT1fX2V4cGVjdGVkWycraW5kZXgrJ10uIEFjdHVhbDogJytfX21hdGNoZWRbaW5kZXhdKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggbnVsbCBhcmd1bWVudCBvZiBmdW5jdGlvbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIG1hdGNoKG51bGwpIGV2YWx1YXRlcyB0byBtYXRjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLm1hdGNoKG51bGwpWzBdICE9PSAibnVsbCIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLm1hdGNoKG51bGwpWzBdID09PSAibnVsbCIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLm1hdGNoKG51bGwpWzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggeCBhcmd1bWVudCBvZiBuZXcgU3RyaW5nIG9iamVjdCwgd2hlcmUgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh4KTsKCnZhciBfX2V4cGVjdGVkID0gUmVnRXhwKHgpLmV4ZWMoInVuZGVmaW5lZCIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19tYXRjaGVkID0gbmV3IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2goeCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoeCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19tYXRjaGVkLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19tYXRjaGVkLmluZGV4ICE9PSBfX2V4cGVjdGVkLmluZGV4KSB7CiAgJEVSUk9SKCcjMjogX19tYXRjaGVkID0gbmV3IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2goeCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoeCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19tYXRjaGVkLmlucHV0ICE9PSBfX2V4cGVjdGVkLmlucHV0KSB7CiAgJEVSUk9SKCcjMzogX19tYXRjaGVkID0gbmV3IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2goeCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAoeCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fbWF0Y2hlZCA9IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLm1hdGNoKHgpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHgpLmV4ZWMoInVuZGVmaW5lZCIpOyBfX21hdGNoZWRbJytpbmRleCsnXT09PV9fZXhwZWN0ZWRbJytpbmRleCsnXS4gQWN0dWFsOiAnK19fbWF0Y2hlZFtpbmRleF0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdW5kZWZpbmVkIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZWQgPSBTdHJpbmcoInVuZGVmaW5lZCIpLm1hdGNoKHVuZGVmaW5lZCk7Cgp2YXIgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19tYXRjaGVkID0gU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh1bmRlZmluZWQpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19tYXRjaGVkLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19tYXRjaGVkLmluZGV4ICE9PSBfX2V4cGVjdGVkLmluZGV4KSB7CiAgJEVSUk9SKCcjMjogX19tYXRjaGVkID0gU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh1bmRlZmluZWQpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19tYXRjaGVkLmlucHV0ICE9PSBfX2V4cGVjdGVkLmlucHV0KSB7CiAgJEVSUk9SKCcjMzogX19tYXRjaGVkID0gU3RyaW5nKCJ1bmRlZmluZWQiKS5tYXRjaCh1bmRlZmluZWQpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fbWF0Y2hlZCA9IFN0cmluZygidW5kZWZpbmVkIikubWF0Y2godW5kZWZpbmVkKTsgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyBfX21hdGNoZWRbJytpbmRleCsnXT09PV9fZXhwZWN0ZWRbJytpbmRleCsnXS4gQWN0dWFsOiAnK19fbWF0Y2hlZFtpbmRleF0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggdm9pZCAwIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OwoKdmFyIF9fbWF0Y2hlZCA9IFN0cmluZyhfX29iaikubWF0Y2godm9pZCAwKTsKCnZhciBfX2V4cGVjdGVkID0gUmVnRXhwKHZvaWQgMCkuZXhlYygidW5kZWZpbmVkIik7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19tYXRjaGVkLmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBfX21hdGNoZWQgPSBTdHJpbmcoX19vYmopLm1hdGNoKHZvaWQgMCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodm9pZCAwKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX21hdGNoZWQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX21hdGNoZWQuaW5kZXggIT09IF9fZXhwZWN0ZWQuaW5kZXgpIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBfX21hdGNoZWQgPSBTdHJpbmcoX19vYmopLm1hdGNoKHZvaWQgMCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodm9pZCAwKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19tYXRjaGVkLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX21hdGNoZWQuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBfX21hdGNoZWQgPSBTdHJpbmcoX19vYmopLm1hdGNoKHZvaWQgMCk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodm9pZCAwKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmlucHV0ID09PSBfX2V4cGVjdGVkLmlucHV0LiBBY3R1YWw6ICcrX19tYXRjaGVkLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19tYXRjaGVkW2luZGV4XSE9PV9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyM0LicraW5kZXgrJzogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19tYXRjaGVkID0gU3RyaW5nKF9fb2JqKS5tYXRjaCh2b2lkIDApOyBfX2V4cGVjdGVkID0gUmVnRXhwKHZvaWQgMCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZFsnK2luZGV4KyddPT09X19leHBlY3RlZFsnK2luZGV4KyddLiBBY3R1YWw6ICcrX19tYXRjaGVkW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDYWxsIG1hdGNoIChyZWdleHApIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb24oKXt9KCkgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKF9fb2JqKS5tYXRjaChmdW5jdGlvbigpe30oKSk7Cgp2YXIgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbWF0Y2hlZC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fbWF0Y2hlZCA9IG5ldyBTdHJpbmcoX19vYmopLm1hdGNoKGZ1bmN0aW9uKCl7fSgpKTsgX19leHBlY3RlZCA9IFJlZ0V4cCh1bmRlZmluZWQpLmV4ZWMoInVuZGVmaW5lZCIpOyBfX21hdGNoZWQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbWF0Y2hlZC5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKF9fb2JqKS5tYXRjaChmdW5jdGlvbigpe30oKSk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodW5kZWZpbmVkKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19tYXRjaGVkLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX21hdGNoZWQuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19tYXRjaGVkID0gbmV3IFN0cmluZyhfX29iaikubWF0Y2goZnVuY3Rpb24oKXt9KCkpOyBfX2V4cGVjdGVkID0gUmVnRXhwKHVuZGVmaW5lZCkuZXhlYygidW5kZWZpbmVkIik7IF9fbWF0Y2hlZC5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbWF0Y2hlZC5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbWF0Y2hlZFtpbmRleF0hPT1fX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjNC4nK2luZGV4Kyc6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX21hdGNoZWQgPSBuZXcgU3RyaW5nKF9fb2JqKS5tYXRjaChmdW5jdGlvbigpe30oKSk7IF9fZXhwZWN0ZWQgPSBSZWdFeHAodW5kZWZpbmVkKS5leGVjKCJ1bmRlZmluZWQiKTsgX19tYXRjaGVkWycraW5kZXgrJ109PT1fX2V4cGVjdGVkWycraW5kZXgrJ10uIEFjdHVhbDogJytfX21hdGNoZWRbaW5kZXhdKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiMTIzNDU2Nzg5MCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgzKVswXSE9PSAiMyIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTY3ODkwIjsgX19zdHJpbmcubWF0Y2goMylbMF09PT0gIjMiLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goMylbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHJpbmcubWF0Y2goMykubGVuZ3RoICE9PTEpIHsKICAkRVJST1IoJyMyOiBfX3N0cmluZyA9ICIxMjM0NTY3ODkwIjsgX19zdHJpbmcubWF0Y2goMykubGVuZ3RoID09PTEuIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaCgzKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3RyaW5nLm1hdGNoKDMpLmluZGV4ICE9PTIpIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZyA9ICIxMjM0NTY3ODkwIjsgX19zdHJpbmcubWF0Y2goMykuaW5kZXggPT09Mi4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKDMpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0cmluZy5tYXRjaCgzKS5pbnB1dCAhPT1fX3N0cmluZykgewogICRFUlJPUignIzQ6IF9fc3RyaW5nID0gIjEyMzQ1Njc4OTAiOyBfX3N0cmluZy5tYXRjaCgzKS5pbnB1dCA9PT1fX3N0cmluZy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKDMpLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4gTGFzdCBtYXRjaCBpcyB1bmRlZmluZWQuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7Cgp2YXIgX19tYXRjaGVzPVsiMDIxMzQiLCAiMDIxMzQiLCB1bmRlZmluZWRdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOwoKX19yZS5sYXN0SW5kZXggPSBfX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoIT09IDMpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gMy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCAhPT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcubWF0Y2goX19yZSkuaW5kZXggPT09X19zdHJpbmcubGFzdEluZGV4T2YoIjAiKS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaChfX3JlKVttaV0hPT1fX21hdGNoZXNbbWldKSB7CiAgICAkRVJST1IoJyMzLicrbWkrJzogX19zdHJpbmcubWF0Y2goX19yZSlbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSlbbWldKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4gTGFzdCBtYXRjaCBpcyB1bmRlZmluZWQuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7Cgp2YXIgX19tYXRjaGVzPVsiMDIxMzQiLCAiMDIxMzQiLCB1bmRlZmluZWRdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOwoKX19yZS5sYXN0SW5kZXggPSBfX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKzE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGghPT0gMykgewogICRFUlJPUignIzE6IF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aD09PSAzLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ICE9PV9fc3RyaW5nLmxhc3RJbmRleE9mKCIwIikpIHsKICAkRVJST1IoJyMyOiBfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCA9PT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSkuaW5kZXggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBtaT0wOyBtaTxfX21hdGNoZXMubGVuZ3RoOyBtaSsrKSB7CiAgaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpW21pXSE9PV9fbWF0Y2hlc1ttaV0pIHsKICAgICRFUlJPUignIzMuJyttaSsnOiBfX3N0cmluZy5tYXRjaChfX3JlKVsnK21pKyddPT09X19tYXRjaGVzWycrbWkrJ10uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKVttaV0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgdmFyaWFibGUgdGhhdCBoYXZlIHZhbHVlIC8oW1xcZF17NX0pKFstXFwgXT9bXFxkXXs0fSk/JC9nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19tYXRjaGVzPVsiMDIxMzQiXTsKCnZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2c7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGghPT0gX19tYXRjaGVzLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aD09PSBfX21hdGNoZXMubGVuZ3RoLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpWzBdIT09X19tYXRjaGVzWzBdKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcubWF0Y2goX19yZSlbMF09PT1fX21hdGNoZXNbMF0uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKVswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19tYXRjaGVzPVsiMDIxMzQiXTsKCnZhciBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2c7Cl9fcmUubGFzdEluZGV4ID0gMDsKCnZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSBfX21hdGNoZXMubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoPT09IF9fbWF0Y2hlcy5sZW5ndGguIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goX19yZSlbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZy5tYXRjaChfX3JlKVswXT09PV9fbWF0Y2hlc1swXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7Cgp2YXIgX19tYXRjaGVzPVsiMDIxMzQiXTsKCnZhciBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2c7CgpfX3JlLmxhc3RJbmRleCA9IF9fc3RyaW5nLmxlbmd0aDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSBfX21hdGNoZXMubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoPT09IF9fbWF0Y2hlcy5sZW5ndGguIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goX19yZSlbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZy5tYXRjaChfX3JlKVswXT09PV9fbWF0Y2hlc1swXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNSIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX21hdGNoZXM9WyIwMjEzNCJdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZzsKCl9fcmUubGFzdEluZGV4ID0gX19zdHJpbmcubGFzdEluZGV4T2YoIjAiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSBfX21hdGNoZXMubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoPT09IF9fbWF0Y2hlcy5sZW5ndGguIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goX19yZSlbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMzOiBfX3N0cmluZy5tYXRjaChfX3JlKVswXT09PV9fbWF0Y2hlc1swXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNiIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kLy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX21hdGNoZXM9WyIwMjEzNCJdOwoKdmFyIF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZzsKCl9fcmUubGFzdEluZGV4ID0gX19zdHJpbmcubGFzdEluZGV4T2YoIjAiKSsxOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcubWF0Y2goX19yZSkubGVuZ3RoIT09IF9fbWF0Y2hlcy5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gX19tYXRjaGVzLmxlbmd0aC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKVswXSE9PV9fbWF0Y2hlc1swXSkgewogICRFUlJPUignIzM6IF9fc3RyaW5nLm1hdGNoKF9fcmUpWzBdPT09X19tYXRjaGVzWzBdLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goX19yZSlbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxNyIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLzAuLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fcmUgPSAvMC4vOwoKdmFyIF9fbnVtID0gMTAyMDMwNDA1MDYwNzA4MDkwMDA7CgpOdW1iZXIucHJvdG90eXBlLm1hdGNoID0gU3RyaW5nLnByb3RvdHlwZS5tYXRjaDsKCi8vX19tYXRjaGVzID0gWyIwMiJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19udW0ubWF0Y2goX19yZSlbMF0hPT0gIjAyIikgewogICRFUlJPUignIzE6IF9fbnVtLm1hdGNoKF9fcmUpWzBdPT09ICIwMiIuIEFjdHVhbDogJytfX251bS5tYXRjaChfX3JlKVswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX251bS5tYXRjaChfX3JlKS5sZW5ndGggIT09MSkgewogICRFUlJPUignIzI6IF9fbnVtLm1hdGNoKF9fcmUpLmxlbmd0aCA9PT0xLiBBY3R1YWw6ICcrX19udW0ubWF0Y2goX19yZSkubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX251bS5tYXRjaChfX3JlKS5pbmRleCAhPT0xKSB7CiAgJEVSUk9SKCcjMzogX19udW0ubWF0Y2goX19yZSkuaW5kZXggPT09MS4gQWN0dWFsOiAnK19fbnVtLm1hdGNoKF9fcmUpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX251bS5tYXRjaChfX3JlKS5pbnB1dCAhPT1TdHJpbmcoX19udW0pKSB7CiAgJEVSUk9SKCcjNDogX19udW0ubWF0Y2goX19yZSkuaW5wdXQgPT09U3RyaW5nKF9fbnVtKS4gQWN0dWFsOiAnK19fbnVtLm1hdGNoKF9fcmUpLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QxOCIsCgpwYXRoOiAiMTUuNS40LjEwLCAxNS4xMC42LjIiLAoKZGVzY3JpcHRpb246ICJSZWd1bGFyIGV4cHJlc3Npb24gaXMgLzAuLy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlID0gLzAuLzsKCl9fcmUubGFzdEluZGV4ID0gMDsKCnZhciBfX251bSA9IDEwMjAzMDQwNTA2MDcwODA5MDAwOwoKTnVtYmVyLnByb3RvdHlwZS5tYXRjaCA9IFN0cmluZy5wcm90b3R5cGUubWF0Y2g7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX251bS5tYXRjaChfX3JlKVswXSE9PSAiMDIiKSB7CiAgJEVSUk9SKCcjMTogX19udW0ubWF0Y2goX19yZSlbMF09PT0gIjAyIi4gQWN0dWFsOiAnK19fbnVtLm1hdGNoKF9fcmUpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbnVtLm1hdGNoKF9fcmUpLmxlbmd0aCAhPT0xKSB7CiAgJEVSUk9SKCcjMjogX19udW0ubWF0Y2goX19yZSkubGVuZ3RoID09PTEuIEFjdHVhbDogJytfX251bS5tYXRjaChfX3JlKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fbnVtLm1hdGNoKF9fcmUpLmluZGV4ICE9PTEpIHsKICAkRVJST1IoJyMzOiBfX251bS5tYXRjaChfX3JlKS5pbmRleCA9PT0xLiBBY3R1YWw6ICcrX19udW0ubWF0Y2goX19yZSkuaW5kZXggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fbnVtLm1hdGNoKF9fcmUpLmlucHV0ICE9PVN0cmluZyhfX251bSkpIHsKICAkRVJST1IoJyM0OiBfX251bS5tYXRjaChfX3JlKS5pbnB1dCA9PT1TdHJpbmcoX19udW0pLiBBY3R1YWw6ICcrX19udW0ubWF0Y2goX19yZSkuaW5wdXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvMzQvZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbWF0Y2hlcz1bIjM0IiwiMzQiLCIzNCJdOwoKdmFyIF9fc3RyaW5nID0gIjM0MzQ0MzQ0NCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvMzQvZykubGVuZ3RoIT09IDMpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIzNDM0NDM0NDQiOyBfX3N0cmluZy5tYXRjaCgvMzQvZykubGVuZ3RoPT09IDMuIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaCgvMzQvZykubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKZm9yKHZhciBtaT0wOyBtaTxfX21hdGNoZXMubGVuZ3RoOyBtaSsrKSB7CiAgaWYgKF9fc3RyaW5nLm1hdGNoKC8zNC9nKVttaV0hPT1fX21hdGNoZXNbbWldKSB7CiAgICAkRVJST1IoJyMyLicrbWkrJzogX19tYXRjaGVzPVsiMzQiLCIzNCIsIjM0Il07IF9fc3RyaW5nID0gIjM0MzQ0MzQ0NCI7IF9fc3RyaW5nLm1hdGNoKC8zNC9nKVsnK21pKyddPT09X19tYXRjaGVzWycrbWkrJ10uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaCgvMzQvZylbbWldKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvXFxkezF9L2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyIxIiwgIjIiLCAiMyIsICI0IiwgIjUiLCAiNiIsICI3IiwgIjgiLCAiOSIsICIwIl07Cgp2YXIgX19zdHJpbmcgPSAiMTIzNDU2YWJjZGU3ODkwIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKC9cZHsxfS9nKS5sZW5ndGghPT0gMTApIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTZhYmNkZTc4OTAiOyBfX3N0cmluZy5tYXRjaCgvXFxkezF9L2cpLmxlbmd0aD09PSAxMC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC9cZHsxfS9nKS5sZW5ndGgpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgpmb3IodmFyIG1pPTA7IG1pPF9fbWF0Y2hlcy5sZW5ndGg7IG1pKyspIHsKICBpZiAoX19zdHJpbmcubWF0Y2goL1xkezF9L2cpW21pXSE9PV9fbWF0Y2hlc1ttaV0pIHsKICAgICRFUlJPUignIzIuJyttaSsnOiBfX21hdGNoZXM9WyIxIiwgIjIiLCAiMyIsICI0IiwgIjUiLCAiNiIsICI3IiwgIjgiLCAiOSIsICIwIl07IF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7IF9fc3RyaW5nLm1hdGNoKC9cXGR7MX0vZylbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xkezF9L2cpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvXFxkezJ9L2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyIxMiIsICIzNCIsICI1NiIsICI3OCIsICI5MCJdOwoKdmFyIF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvXGR7Mn0vZykubGVuZ3RoIT09IDUpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTZhYmNkZTc4OTAiOyBfX3N0cmluZy5tYXRjaCgvXFxkezJ9L2cpLmxlbmd0aD09PSA1LiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xkezJ9L2cpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaCgvXGR7Mn0vZylbbWldIT09X19tYXRjaGVzW21pXSkgewogICAgJEVSUk9SKCcjMi4nK21pKyc6IF9fbWF0Y2hlcz1bIjEyIiwgIjM0IiwgIjU2IiwgIjc4IiwgIjkwIl07IF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7IF9fc3RyaW5nLm1hdGNoKC9cXGR7Mn0vZylbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xkezJ9L2cpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvXFxEezJ9L2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyJhYiIsICJjZCJdOwoKdmFyIF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvXER7Mn0vZykubGVuZ3RoIT09IDIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICIxMjM0NTZhYmNkZTc4OTAiOyBfX3N0cmluZy5tYXRjaCgvXFxEezJ9L2cpLmxlbmd0aD09PSAyLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xEezJ9L2cpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaCgvXER7Mn0vZylbbWldIT09X19tYXRjaGVzW21pXSkgewogICAgJEVSUk9SKCcjMi4nK21pKyc6IF9fbWF0Y2hlcz1bImFiIiwgImNkIl07IF9fc3RyaW5nID0gIjEyMzQ1NmFiY2RlNzg5MCI7IF9fc3RyaW5nLm1hdGNoKC9cXER7Mn0vZylbJyttaSsnXT09PV9fbWF0Y2hlc1snK21pKyddLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goL1xEezJ9L2cpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvLiBMYXN0IG1hdGNoIGlzIHZvaWQgMCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMF0hPT0gIjAyMTM0IikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKVswXT09PSAiMDIxMzQiLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMV0hPT0gIjAyMTM0IikgewogICRFUlJPUignIzI6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKVsxXT09PSAiMDIxMzQiLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLylbMl0hPT0gdm9pZCAwKSB7CiAgJEVSUk9SKCcjMzogX19zdHJpbmcgPSAiQm9zdG9uLCBNYXNzLiAwMjEzNCI7IF9fc3RyaW5nLm1hdGNoKC8oW1xcZF17NX0pKFstXFwgXT9bXFxkXXs0fSk/JC8pWzJdPT09IHZvaWQgMC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pWzJdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pLmxlbmd0aCAhPT0zKSB7CiAgJEVSUk9SKCcjNDogX19zdHJpbmcgPSAiQm9zdG9uLCBNYXNzLiAwMjEzNCI7IF9fc3RyaW5nLm1hdGNoKC8oW1xcZF17NX0pKFstXFwgXT9bXFxkXXs0fSk/JC8pLmxlbmd0aCA9PT0zLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLykubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvKS5pbmRleCAhPT0xNCkgewogICRFUlJPUignIzU6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKS5pbmRleCA9PT0xNC4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvKS5pbnB1dCAhPT1fX3N0cmluZykgewogICRFUlJPUignIzY6IF9fc3RyaW5nID0gIkJvc3RvbiwgTWFzcy4gMDIxMzQiOyBfX3N0cmluZy5tYXRjaCgvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvKS5pbnB1dCA9PT1fX3N0cmluZy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC8pLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbWF0Y2hlcz1bIjAyMTM0Il07Cgp2YXIgX19zdHJpbmcgPSAiQm9zdG9uLCBNYXNzLiAwMjEzNCI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZykubGVuZ3RoIT09IDEpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9ICJCb3N0b24sIE1hc3MuIDAyMTM0IjsgX19zdHJpbmcubWF0Y2goLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cpLmxlbmd0aD09PSAxLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2cpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaCgvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvZylbMF0hPT1fX21hdGNoZXNbMF0pIHsKICAkRVJST1IoJyMyOiBfX21hdGNoZXM9WyIwMjEzNCJdOyBfX3N0cmluZyA9ICJCb3N0b24sIE1hc3MuIDAyMTM0IjsgX19zdHJpbmcubWF0Y2goLyhbXFxkXXs1fSkoWy1cXCBdP1tcXGRdezR9KT8kL2cpWzBdPT09X19tYXRjaGVzWzBdLiBBY3R1YWw6ICcrX19zdHJpbmcubWF0Y2goLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kL2cpWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvLiBMYXN0IG1hdGNoIGlzIHVuZGVmaW5lZC4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX21hdGNoZXM9WyIwMjEzNCIsICIwMjEzNCIsIHVuZGVmaW5lZF07Cgp2YXIgX19yZSA9IC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC87Cl9fcmUubGFzdEluZGV4ID0gMDsKCnZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSAzKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gMy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCAhPT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3JlLmxhc3RJbmRleCA9IDA7IF9fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ID09PV9fc3RyaW5nLmxhc3RJbmRleE9mKCIwIikuIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIG1pPTA7IG1pPF9fbWF0Y2hlcy5sZW5ndGg7IG1pKyspIHsKICBpZiAoX19zdHJpbmcubWF0Y2goX19yZSlbbWldIT09X19tYXRjaGVzW21pXSkgewogICAgJEVSUk9SKCcjMy4nK21pKyc6IF9fc3RyaW5nID0gIkJvc3RvbiwgTUEgMDIxMzQiOyBfX3JlID0gLyhbXGRdezV9KShbLVwgXT9bXGRdezR9KT8kLzsgX19tYXRjaGVzPVsiMDIxMzQiLCAiMDIxMzQiLCB1bmRlZmluZWRdOyBfX3N0cmluZy5tYXRjaChfX3JlKVsnK21pKyddPT09X19tYXRjaGVzWycrbWkrJ10uIEFjdHVhbDogJytfX3N0cmluZy5tYXRjaChfX3JlKVttaV0pOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTAsIDE1LjEwLjYuMiIsCgpkZXNjcmlwdGlvbjogIlJlZ3VsYXIgZXhwcmVzc2lvbiBpcyAvKFtcXGRdezV9KShbLVxcIF0/W1xcZF17NH0pPyQvLiBMYXN0IG1hdGNoIGlzIHVuZGVmaW5lZC4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJCb3N0b24sIE1BIDAyMTM0IjsKCnZhciBfX21hdGNoZXM9WyIwMjEzNCIsICIwMjEzNCIsIHVuZGVmaW5lZF07Cgp2YXIgX19yZSA9IC8oW1xkXXs1fSkoWy1cIF0/W1xkXXs0fSk/JC87CgpfX3JlLmxhc3RJbmRleCA9IF9fc3RyaW5nLmxlbmd0aDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCE9PSAzKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3N0cmluZy5tYXRjaChfX3JlKS5sZW5ndGg9PT0gMy4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cmluZy5tYXRjaChfX3JlKS5pbmRleCAhPT1fX3N0cmluZy5sYXN0SW5kZXhPZigiMCIpKSB7CiAgJEVSUk9SKCcjMjogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX3JlLmxhc3RJbmRleCA9IF9fc3RyaW5nLmxlbmd0aDsgX19zdHJpbmcubWF0Y2goX19yZSkuaW5kZXggPT09X19zdHJpbmcubGFzdEluZGV4T2YoIjAiKS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgbWk9MDsgbWk8X19tYXRjaGVzLmxlbmd0aDsgbWkrKykgewogIGlmIChfX3N0cmluZy5tYXRjaChfX3JlKVttaV0hPT1fX21hdGNoZXNbbWldKSB7CiAgICAkRVJST1IoJyMzLicrbWkrJzogX19zdHJpbmcgPSAiQm9zdG9uLCBNQSAwMjEzNCI7IF9fcmUgPSAvKFtcZF17NX0pKFstXCBdP1tcZF17NH0pPyQvOyBfX21hdGNoZXM9WyIwMjEzNCIsICIwMjEzNCIsIHVuZGVmaW5lZF07IF9fc3RyaW5nLm1hdGNoKF9fcmUpWycrbWkrJ109PT1fX21hdGNoZXNbJyttaSsnXS4gQWN0dWFsOiAnK19fc3RyaW5nLm1hdGNoKF9fcmUpW21pXSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E2IiwKCnBhdGg6ICIxNS41LjQuMTAsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLm1hdGNoLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubWF0Y2gucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLm1hdGNoLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.10_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E3IiwKCnBhdGg6ICIxNS41LjQuMTAsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyBcIlN0cmluZy5wcm90b3R5cGUubWF0Y2ggb2JqZWN0XCIgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOyBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLm1hdGNoOyBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQoKIH0KfSk7Cgo=","id":"S15.5.4.10_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E4IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLm1hdGNoLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubWF0Y2gucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLm1hdGNoKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5tYXRjaCl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.10_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEwX0E5IiwKCnBhdGg6ICIxNS41LjQuMTAiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubWF0Y2gubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubWF0Y2gubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLm1hdGNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLm1hdGNoLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5tYXRjaC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubWF0Y2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.10_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExMCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMTogU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoOwoKU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCAhPT0gX19vYmopIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCA9PT0gX19vYmouIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExMSIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHRydWUgYW5kIDEsIGFuZCBpbnN0YW5jZSBpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsKCl9faW5zdGFuY2UucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UucmVwbGFjZSh0cnVlLCAxKSAhPT0gIjEiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7IF9faW5zdGFuY2UucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsgIF9faW5zdGFuY2UucmVwbGFjZSh0cnVlLCAxKSA9PT0gIjEiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5yZXBsYWNlKHRydWUsIDEpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhbmQgZnVuY3Rpb24gYXJndW1lbnRzIG9mIHN0cmluZy4gT2JqZWN0IGhhdmUgb3ZlcnJpZGVkIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OwoKdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAocmVwbGFjZShfX29iaiwgZnVuY3Rpb24oKXtyZXR1cm4geDt9KSAhPT0gInVuZGVmaW5lZEJBQkFCQUIiKSB7CiAgICAgICRFUlJPUignIzE6IHZhciB4OyB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OyB2YXIgX19zdHIgPSAiQUJCXHUwMDQxQkFCQUIiOyByZXBsYWNlKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiB4O30pID09PSAidW5kZWZpbmVkQkFCQUJBQiIuIEFjdHVhbDogJytyZXBsYWNlKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiB4O30pICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdHMgYXJndW1lbnRzIG9mIHN0cmluZyBvYmplY3QuIE9iamVjdHMgaGF2ZSBvdmVycmlkZWQgdG9TdHJpbmcgZnVuY3Rpb24sIHRoYXQgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zZWFyY2hWYWx1ZSI7fX07CnZhciBfX29iajIgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5yZXBsYWNlVmFsdWUiO319Owp2YXIgX19zdHIgPSB7c3RyX186IkFCQlx1MDA0MUJBQkFCIn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgd2l0aChzdHJfXyl7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHZhciB4ID0gcmVwbGFjZShfX29iaixfX29iajIpOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSByZXBsYWNlKF9fb2JqLF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW5zZWFyY2hWYWx1ZSIpIHsKICAgICAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnNlYXJjaFZhbHVlIi4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdHMgYXJndW1lbnRzIG9mIFN0cmluZyBvYmplY3QuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnNlYXJjaFZhbHVlIjt9fTsKdmFyIF9fb2JqMiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbnJlcGxhY2VWYWx1ZSI7fX07CnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoIkFCQlx1MDA0MUJBQkFCIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSByZXBsYWNlKF9fb2JqLCBfX29iajIpOwogICAgICAkRkFJTCgnIzE6ICJ2YXIgeCA9IHJlcGxhY2UoX19vYmosX19vYmoyKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgaWYgKGUhPT0iaW5zZWFyY2hWYWx1ZSIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImluc2VhcmNoVmFsdWUiLiBBY3R1YWw6ICcrZSk7CiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCByZXBsYWNlIChzZWFyY2hWYWx1ZSwgcmVwbGFjZVZhbHVlKSBmdW5jdGlvbiB3aXRoIG9iamVjdHMgYXJndW1lbnRzIG9mIHN0cmluZy4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LCB2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07CnZhciBfX29iajIgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5yZXBsYWNlVmFsdWUiO319OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogICAgdmFyIHggPSAiQUJCXHUwMDQxQkFCQUJcdTAwMzFCQkFBIi5yZXBsYWNlKF9fb2JqLCBfX29iajIpOwogICAgJEZBSUwoJyMxOiB2YXIgeCA9ICJBQkJcXHUwMDQxQkFCQUJcXHUwMDMxQkJBQSIucmVwbGFjZShfX29iaixfX29iajIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICAgIGlmIChlIT09ImlucmVwbGFjZVZhbHVlIikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5yZXBsYWNlVmFsdWUiLiBBY3R1YWw6ICcrZSk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgc3RyaW5nLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIjc3Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5yZXBsYWNlKF9fcmVnLCAxKSAhPT0gIkFCQkFCQUJBQlx1MDAzMUJCQUEiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fcmVnID0gbmV3IFJlZ0V4cCgiNzciKTsgIkFCQlxcdTAwNDFCQUJBQlxcdTAwMzdcXHUwMDM3QkJBQSIucmVwbGFjZShfX3JlZywgMSkgPT09ICJBQkJBQkFCQUJcXHUwMDMxQkJBQSIuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJBQkFCXHUwMDM3XHUwMDM3QkJBQSIucmVwbGFjZShfX3JlZywgMSkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgT2JqZWN0LCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAvNzcvfX07Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoMTEwMC4wMDc3NzAwMSk7CgpPYmplY3QucHJvdG90eXBlLnJlcGxhY2UgPSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX2luc3RhbmNlLnJlcGxhY2UoX19vYmosIDEpID09PSAiMTEwMC4wMDE3MDAxIjsKICAgICRGQUlMKCcjMS4wOiB4ID0gX19pbnN0YW5jZS5yZXBsYWNlKF9fb2JqLCAxKSA9PT0gIjExMDAuMDAxNzAwMSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiBpcyBpbnN0YW5jZSBvZiBUeXBlRXJyb3IuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNiIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgTnVtYmVyLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlID0gLzc3LzsKCnZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMTAwLjAwNzc3MDAxKTsKCk51bWJlci5wcm90b3R5cGUucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsKCnZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihhMSxhMixhMyl7cmV0dXJuIGEyKyJ6In07fX0KLy9fX29iaiA9IGZ1bmN0aW9uKGExLGEyLGEzKXtyZXR1cm4gYTIrInoifTsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX2luc3RhbmNlLnJlcGxhY2UoX19yZSwgX19vYmopID09PSAiMTEwMC4wMDd6NzAwMSI7CiAgJEZBSUwoJyMxLjA6IHggPSBfX2luc3RhbmNlLnJlcGxhY2UoX19vYmosIDEpID09PSAiMTEwMC4wMDd6NzAwMSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiBpcyBpbnN0YW5jZSBvZiBUeXBlRXJyb3IuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QxNyIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgU3RyaW5nIG9iamVjdCwgc2VhcmNoVmFsdWUgaXMgcmVndWxhciBleHByZXNzaW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZSA9IG5ldyBSZWdFeHAoeCwiZyIpOwoKdmFyIF9faW5zdGFuY2UgPSBTdHJpbmcoImFzZGYiKTsKCnZhciBfX3N0ciA9ICIxIjsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5yZXBsYWNlKF9fcmUsIF9fc3RyKSAhPT0gIjFhMXMxZDFmMSIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fcmUgPSBuZXcgUmVnRXhwKHgsImciKTsgX19pbnN0YW5jZSA9IFN0cmluZygiYXNkZiIpOyBfX3N0ciA9ICIxIjsgX19pbnN0YW5jZS5yZXBsYWNlKF9fcmUsIF9fc3RyKSA9PT0gIjFhMXMxZDFmMSIuIEFjdHVhbDogJytfX2luc3RhbmNlLnJlcGxhY2UoX19yZSwgX19zdHIpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFuLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLnJlcGxhY2UgPSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnJlcGxhY2UoZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSgpLHgpICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IHZhciB4OyBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UucmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsgIF9faW5zdGFuY2UucmVwbGFjZShmdW5jdGlvbigpe3JldHVybiBmYWxzZTt9KCkseCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5yZXBsYWNlKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSx4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICByZXBsYWNlID0gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlOwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9CgpfX2NsYXNzX18gPSB0b1N0cmluZygpOwpfX3RvZ2dsZSA9IDE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCl9fcmVwbGFjZWQgPSByZXBsYWNlKGV2YWwoIlwiYlwiIiksIl4iKTsKCl9fZ29sZGVuID0gIiI7CmZvcih2YXIgaT0wOyBpPF9fY2xhc3NfXy5sZW5ndGg7IGkrKykgewogIGlmICgoX19jbGFzc19fLmNoYXJBdChpKT09PSJiIikmJihfX3RvZ2dsZSkpIHsKICAgIF9fZ29sZGVuKz0iXiI7CiAgICBfX3RvZ2dsZSA9IDA7CiAgfSBlbHNlIHsKICAgIF9fZ29sZGVuKz1fX2NsYXNzX18uY2hhckF0KGkpOwogIH0KCn0KaWYgKF9fcmVwbGFjZWQgIT09X19nb2xkZW4pIHsKICAkRVJST1IoJyMxOiBfX3JlcGxhY2VkID09PV9fZ29sZGVuLiBBY3R1YWw6ICcrX19yZXBsYWNlZCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggbnVsbCBhbmQgZnVuY3Rpb24oYTEsYTIsYTMpe3JldHVybiBhMitcIlwiO30gYXJndW1lbnRzIG9mIGZ1bmN0aW9uIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5yZXBsYWNlKG51bGwsZnVuY3Rpb24oYTEsYTIsYTMpe3JldHVybiBhMisiIjt9KSAhPT0gImcxdW5hIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkucmVwbGFjZShudWxsLGZ1bmN0aW9uKGExLGEyLGEzKXtyZXR1cm4gYTIrIiI7fSkgPT09ICJnMXVuYSIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnJlcGxhY2UobnVsbCxmdW5jdGlvbihhMSxhMixhMyl7cmV0dXJuIGEyKyIiO30pICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggbnVsbCBhbmQgRnVuY3Rpb24oKSBhcmd1bWVudHMgb2YgZnVuY3Rpb24gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnJlcGxhY2UobnVsbCwgRnVuY3Rpb24oKSkgIT09ICJndW5kZWZpbmVkdW5hIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkucmVwbGFjZShudWxsLCBGdW5jdGlvbigpKSA9PT0gImd1bmRlZmluZWR1bmEiLiBBY3R1YWw6ICcrZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5yZXBsYWNlKG51bGwsIEZ1bmN0aW9uKCkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggeCBhbmQgRnVuY3Rpb24oXCJyZXR1cm4gYXJndW1lbnRzWzFdKzQyO1wiKSBhcmd1bWVudHMgb2YgbmV3IFN0cmluZyBvYmplY3QuIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5yZXBsYWNlKHgsRnVuY3Rpb24oInJldHVybiBhcmd1bWVudHNbMV0rNDI7IikpICE9PSAiNDIiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLnJlcGxhY2UoeCxGdW5jdGlvbigicmV0dXJuIGFyZ3VtZW50c1sxXSs0MjsiKSkgPT09ICI0MiIuIEFjdHVhbDogJytuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5yZXBsYWNlKHgsRnVuY3Rpb24oInJldHVybiBhcmd1bWVudHNbMV0rNDI7IikpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.11_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggc3RyaW5nIGFuZCB1bmRlZmluZWQgYXJndW1lbnRzIG9mIFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZyh2b2lkIDApLnJlcGxhY2UoImUiLHVuZGVmaW5lZCkgIT09ICJ1bmR1bmRlZmluZWRmaW5lZCIpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcodm9pZCAwKS5yZXBsYWNlKCJlIix1bmRlZmluZWQpID09PSAidW5kdW5kZWZpbmVkZmluZWQiLiBBY3R1YWw6ICcrU3RyaW5nKHZvaWQgMCkucmVwbGFjZSgiZSIsdW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggcmVndWxhciBleHByZXNzaW9uIGFuZCB2b2lkIDAgYXJndW1lbnRzIG9mIFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nKF9fb2JqKS5yZXBsYWNlKC9lL2csdm9pZCAwKSAhPT0gInVuZHVuZGVmaW5lZGZpbnVuZGVmaW5lZGQiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgU3RyaW5nKF9fb2JqKS5yZXBsYWNlKC9lL2csdm9pZCAwKSA9PT0gInVuZHVuZGVmaW5lZGZpbnVuZGVmaW5lZGQiLiBBY3R1YWw6ICcrU3RyaW5nKF9fb2JqKS5yZXBsYWNlKC9lL2csdm9pZCAwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDYWxsIHJlcGxhY2UgKHNlYXJjaFZhbHVlLCByZXBsYWNlVmFsdWUpIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb25zIGFyZ3VtZW50cyBvZiBuZXcgU3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKG5ldyBTdHJpbmcoX19vYmopLnJlcGxhY2UoZnVuY3Rpb24oKXt9KCksX19mdW5jKSAhPT0gInVuZGVmaW5lZDB1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IGZ1bmN0aW9uIF9fZnVuYyhhMSxhMixhMyl7cmV0dXJuIGExK2EyK2EzO307IG5ldyBTdHJpbmcoX19vYmopLnJlcGxhY2UoZnVuY3Rpb24oKXt9KCksX19mdW5jKSA9PT0gInVuZGVmaW5lZDB1bmRlZmluZWQiLiBBY3R1YWw6ICcrbmV3IFN0cmluZyhfX29iaikucmVwbGFjZShmdW5jdGlvbigpe30oKSxfX2Z1bmMpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmMoYTEsYTIsYTMpe3JldHVybiBhMSthMithMzt9OwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJEb25gdCB1c2UgJCBpbiByZXBsYWNlVmFsdWUsIHNlYXJjaFZhbHVlIGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiAvc2gvZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoL2c7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ci5yZXBsYWNlKF9fcmUsJ3NjaCcpIT09J1NoZSBzZWxscyBzZWFzY2hlbGxzIGJ5IHRoZSBzZWFzY2hvcmUuJykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuXCc7IHZhciBfX3JlID0gL3NoL2c7IF9fc3RyLnJlcGxhY2UoX19yZSxcJ3NjaFwnKT09PVwnU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNjaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjExIiwKCmRlc2NyaXB0aW9uOiAiVXNlICRcJyBpbiByZXBsYWNlVmFsdWUsIHNlYXJjaFZhbHVlIGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiAvc2gvIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuJzsKdmFyIF9fcmUgPSAvc2gvOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAiJCciICsgJ3NjaCcpIT09J1NoZSBzZWxscyBzZWFlbGxzIGJ5IHRoZSBzZWFzaG9yZS5zY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gXCdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJzsgdmFyIF9fcmUgPSAvc2gvOyBfX3N0ci5yZXBsYWNlKF9fcmUsICIkXCciICsgXCdzY2hcJyk9PT1cJ1NoZSBzZWxscyBzZWFlbGxzIGJ5IHRoZSBzZWFzaG9yZS5zY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgIiQnIiArICdzY2gnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCQgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoL2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nOwp2YXIgX19yZSA9IC9zaC9nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCIkJCIgKyAnc2NoJykhPT0nU2hlIHNlbGxzIHNlYSRzY2hlbGxzIGJ5IHRoZSBzZWEkc2Nob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC9nOyBfX3N0ci5yZXBsYWNlKF9fcmUsIiQkIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhJHNjaGVsbHMgYnkgdGhlIHNlYSRzY2hvcmUuXCcuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsIiQkIiArICdzY2gnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCYgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoL2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nOwp2YXIgX19yZSA9IC9zaC9nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCIkJiIgKyAnc2NoJykhPT0nU2hlIHNlbGxzIHNlYXNoc2NoZWxscyBieSB0aGUgc2Vhc2hzY2hvcmUuJykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuXCc7IHZhciBfX3JlID0gL3NoL2c7IF9fc3RyLnJlcGxhY2UoX19yZSwiJCYiICsgXCdzY2hcJyk9PT1cJ1NoZSBzZWxscyBzZWFzaHNjaGVsbHMgYnkgdGhlIHNlYXNoc2Nob3JlLlwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCIkJiIgKyAnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJGAgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoL2ciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nOwp2YXIgX19yZSA9IC9zaC9nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAiJGAiICsgJ3NjaCcpIT09J1NoZSBzZWxscyBzZWFTaGUgc2VsbHMgc2Vhc2NoZWxscyBieSB0aGUgc2VhU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2Nob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC9nOyBfX3N0ci5yZXBsYWNlKF9fcmUsICIkYCIgKyBcJ3NjaFwnKT09PVwnU2hlIHNlbGxzIHNlYVNoZSBzZWxscyBzZWFzY2hlbGxzIGJ5IHRoZSBzZWFTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzY2hvcmUuXCcuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsICIkYCIgKyAnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJFwnIGluIHJlcGxhY2VWYWx1ZSwgc2VhcmNoVmFsdWUgaXMgcmVndWxhciBleHByZXNzaW9uIC9zaC9nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuJzsKdmFyIF9fcmUgPSAvc2gvZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQnIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2VhZWxscyBieSB0aGUgc2Vhc2hvcmUuc2NoZWxscyBieSB0aGUgc2Vhb3JlLnNjaG9yZS4nKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gXCdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJzsgdmFyIF9fcmUgPSAvc2gvZzsgX19zdHIucmVwbGFjZShfX3JlLCAiJFwnIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhZWxscyBieSB0aGUgc2Vhc2hvcmUuc2NoZWxscyBieSB0aGUgc2Vhb3JlLnNjaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgIiQnIiArICdzY2gnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJEb25gdCB1c2UgJCBpbiByZXBsYWNlVmFsdWUsIHNlYXJjaFZhbHVlIGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiAvc2gvIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAnU2hlIHNlbGxzIHNlYXNoZWxscyBieSB0aGUgc2Vhc2hvcmUuJzsKdmFyIF9fcmUgPSAvc2gvOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAnc2NoJykhPT0nU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC87IF9fc3RyLnJlcGxhY2UoX19yZSwgXCdzY2hcJyk9PT1cJ1NoZSBzZWxscyBzZWFzY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgJ3NjaCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCQgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQkIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2VhJHNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC87IF9fc3RyLnJlcGxhY2UoX19yZSwgIiQkIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhJHNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCAiJCQiICsgJ3NjaCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJCYgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQmIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2Vhc2hzY2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS4nKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gXCdTaGUgc2VsbHMgc2Vhc2hlbGxzIGJ5IHRoZSBzZWFzaG9yZS5cJzsgdmFyIF9fcmUgPSAvc2gvOyBfX3N0ci5yZXBsYWNlKF9fcmUsICIkJiIgKyBcJ3NjaFwnKT09PVwnU2hlIHNlbGxzIHNlYXNoc2NoZWxscyBieSB0aGUgc2Vhc2hvcmUuXCcuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsICIkJiIgKyAnc2NoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJVc2UgJGAgaW4gcmVwbGFjZVZhbHVlLCBzZWFyY2hWYWx1ZSBpcyByZWd1bGFyIGV4cHJlc3Npb24gL3NoLyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLic7CnZhciBfX3JlID0gL3NoLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiRgIiArICdzY2gnKSE9PSdTaGUgc2VsbHMgc2VhU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ1NoZSBzZWxscyBzZWFzaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnOyB2YXIgX19yZSA9IC9zaC87IF9fc3RyLnJlcGxhY2UoX19yZSwgIiRgIiArIFwnc2NoXCcpPT09XCdTaGUgc2VsbHMgc2VhU2hlIHNlbGxzIHNlYXNjaGVsbHMgYnkgdGhlIHNlYXNob3JlLlwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCAiJGAiICsgJ3NjaCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJyZXBsYWNlVmFsdWUgaXMgXCIkMTFcIiArIDE1IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAndWlkPTMxJzsKdmFyIF9fcmUgPSAvKHVpZD0pKFxkKykvOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIDE1KSE9PSd1aWQ9MTE1JykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwndWlkPTMxXCc7IHZhciBfX3JlID0gLyh1aWQ9KShcZCspLzsgX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIDE1KT09PVwndWlkPTExNVwnLiBBY3R1YWw6ICcrX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIDE1KSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJyZXBsYWNlVmFsdWUgaXMgXCIkMTFcIiArIFwnMTVcJyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gJ3VpZD0zMSc7CnZhciBfX3JlID0gLyh1aWQ9KShcZCspLzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19yZSwgIiQxMSIgKyAnMTUnKSE9PSd1aWQ9MTE1JykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9IFwndWlkPTMxXCc7IHZhciBfX3JlID0gLyh1aWQ9KShcZCspLzsgX19zdHIucmVwbGFjZShfX3JlLCAiJDExIiArIFwnMTVcJyk9PT1cJ3VpZD0xMTVcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19yZSwgIiQxMSIgKyAnMTUnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJyZXBsYWNlVmFsdWUgaXMgXCIkMTFcIiArIFwnQTE1XCciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICd1aWQ9MzEnOwp2YXIgX19yZSA9IC8odWlkPSkoXGQrKS87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ci5yZXBsYWNlKF9fcmUsICIkMTEiICsgJ0ExNScpIT09J3VpZD0xQTE1JyApIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSBcJ3VpZD0zMVwnOyB2YXIgX19yZSA9IC8odWlkPSkoXGQrKS87IF9fc3RyLnJlcGxhY2UoX19yZSwgIiQxMSIgKyBcJ0ExNVwnKT09PVwndWlkPTFBMTVcJyAuIEFjdHVhbDogJytfX3N0ci5yZXBsYWNlKF9fcmUsICIkMTEiICsgJ0ExNScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS8iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9ICJhYmMxMiBkZWYzNCI7CnZhciBfX3BhdHRlcm4gPSAvKFthLXpdKykoWzAtOV0rKS87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0ci5yZXBsYWNlKF9fcGF0dGVybiwgX19yZXBsRk4pIT09JzEyYWJjIGRlZjM0JykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9ICJhYmMxMiBkZWYzNCI7IHZhciBfX3BhdHRlcm4gPSAvKFthLXpdKykoWzAtOV0rKS87IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhYmMgZGVmMzRcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1QyIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS9nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAiYWJjMTIgZGVmMzQiOwp2YXIgX19wYXR0ZXJuID0gLyhbYS16XSspKFswLTldKykvZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikhPT0nMTJhYmMgMzRkZWYnKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gImFiYzEyIGRlZjM0IjsgdmFyIF9fcGF0dGVybiA9IC8oW2Etel0rKShbMC05XSspL2c7IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhYmMgMzRkZWZcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1QzIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS9pIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAiYUJjMTIgZGVmMzQiOwp2YXIgX19wYXR0ZXJuID0gLyhbYS16XSspKFswLTldKykvaTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikhPT0nMTJhQmMgZGVmMzQnKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyID0gImFCYzEyIGRlZjM0IjsgdmFyIF9fcGF0dGVybiA9IC8oW2Etel0rKShbMC05XSspL2k7IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhQmMgZGVmMzRcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E0X1Q0IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAvKFthLXpdKykoWzAtOV0rKS9pZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyID0gImFCYzEyIGRFZjM0IjsKdmFyIF9fcGF0dGVybiA9IC8oW2Etel0rKShbMC05XSspL2lnOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKSE9PScxMmFCYyAzNGRFZicpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHIgPSAiYUJjMTIgZEVmMzQiOyB2YXIgX19wYXR0ZXJuID0gLyhbYS16XSspKFswLTldKykvaWc7IGZ1bmN0aW9uIF9fcmVwbEZOKCkge3JldHVybiBhcmd1bWVudHNbMl0gKyBhcmd1bWVudHNbMV07fTsgX19zdHIucmVwbGFjZShfX3BhdHRlcm4sIF9fcmVwbEZOKT09PVwnMTJhQmMgMzRkRWZcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGxGTikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCmZ1bmN0aW9uIF9fcmVwbEZOKCkgewogICAgcmV0dXJuIGFyZ3VtZW50c1syXSArIGFyZ3VtZW50c1sxXTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.11_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E1X1QxIiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJzZWFyY2hWYWx1ZSBpcyAgcmVnZXhwIC9eKGErKVxcMSosXFwxKyQvIGFuZCByZXBsYWNlVmFsdWUgaXMgXCIkMVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHIgPSAiYWFhYWFhYWFhYSxhYWFhYWFhYWFhYWFhYWEiOwp2YXIgX19wYXR0ZXJuID0gL14oYSspXDEqLFwxKyQvOwp2YXIgX19yZXBsID0gIiQxIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGwpIT09J2FhYWFhJykgewogICRFUlJPUignIzE6IHZhciBfX3N0ciA9ICJhYWFhYWFhYWFhLGFhYWFhYWFhYWFhYWFhYSI7IHZhciBfX3BhdHRlcm4gPSAvXihhKylcMSosXDErJC87IHZhciBfX3JlcGwgPSAiJDEiOyBfX3N0ci5yZXBsYWNlKF9fcGF0dGVybiwgX19yZXBsKT09PVwnYWFhYWFcJy4gQWN0dWFsOiAnK19fc3RyLnJlcGxhY2UoX19wYXR0ZXJuLCBfX3JlcGwpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E2IiwKCnBhdGg6ICIxNS41LjQuMTEsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvdG90eXBlICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.11_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E3IiwKCnBhdGg6ICIxNS41LjQuMTEsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIG9iamVjdCBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTsKCnRyeSB7CiAgdmFyIF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZOwogICRGQUlMKCcjMTogX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9CgogfQp9KTsKCg==","id":"S15.5.4.11_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E4IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgpjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9IGNvdW50ID09PSAwLiBBY3R1YWw6ICcrY291bnQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.11_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjExX0E5IiwKCnBhdGg6ICIxNS41LjQuMTEiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLmxlbmd0aCkgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUucmVwbGFjZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.11_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExLjFfVDEiLAoKcGF0aDogIjE1LjUuNC4xMiIsCgpkZXNjcmlwdGlvbjogIkNhbGwgc2VhcmNoKCkgaXMgdGhlIHNhbWUgc2VhcmNoKHVuZGVmaW5lZCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdmFyIHggPSAiIi5zZWFyY2goKTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A1.1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExMCIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzE6IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc2VhcmNoLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExMSIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnNlYXJjaCA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zZWFyY2godHJ1ZSkgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zZWFyY2ggPSBTdHJpbmcucHJvdG90eXBlLnNlYXJjaDsgIF9faW5zdGFuY2Uuc2VhcmNoKHRydWUpID09PSAwLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zZWFyY2godHJ1ZSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsKdmFyIF9fc3RyID0gInNzQUJCXHUwMDQxQkFCQUIiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICBpZiAoc2VhcmNoKF9fb2JqKSAhPT0yKSB7CiAgICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OyB2YXIgX19zdHIgPSAic3NBQkJcdTAwNDFCQUJBQiI7IHNlYXJjaChfX29iaikgPT09Mi4gQWN0dWFsOiAnK3NlYXJjaChfX29iaikgKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgd2l0aChzdHJfXyl7CiAgICB0cnkgewogICAgICB2YXIgeCA9IHNlYXJjaChfX29iaik7CiAgICAgICRGQUlMKCcjMTogdmFyIHggPSBzZWFyY2goX19vYmopIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvc3RyIjt9fQp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCJBQkJcdTAwNDFCQUJBQiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gc2VhcmNoKF9fb2JqKTsKICAgICAgJEZBSUwoJyMxOiB2YXIgeCA9IHNlYXJjaChfX29iaikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQlx1MDAzMUFCQUJcdTAwMzFCQkFBIi5zZWFyY2goX19vYmopICE9PTUpIHsKICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07ICJBQkJcXHUwMDQxQlxcdTAwMzFBQkFCXFx1MDAzMUJCQUEiLnNlYXJjaChfX29iaikgPT09NS4gQWN0dWFsOiAnKygiQUJCXHUwMDQxQlx1MDAzMUFCQUJcdTAwMzFCQkFBIi5zZWFyY2goX19vYmopKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEyIiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgc3RyaW5nLCBhcmd1bWVudCBpcyByZWd1bGFyIGV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIjc3Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5zZWFyY2goX19yZWcpICE9PSA5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fcmVnID0gbmV3IFJlZ0V4cCgiNzciKTsgIkFCQlxcdTAwNDFCQUJBQlxcdTAwMzdcXHUwMDM3QkJBQSIuc2VhcmNoKF9fcmVnKSA9PT0gOS4gQWN0dWFsOiAnKygiQUJCXHUwMDQxQkFCQUJcdTAwMzdcdTAwMzdCQkFBIi5zZWFyY2goX19yZWcpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiBjYWxsLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2Uuc2VhcmNoID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2g7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnNlYXJjaChmdW5jdGlvbigpe3JldHVybiBmYWxzZTt9KCkpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnNlYXJjaCA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOyAgX19pbnN0YW5jZS5zZWFyY2goZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSgpKSA9PT0gMC4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc2VhcmNoKGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc2VhcmNoID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2g7CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB2YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHNlYXJjaChldmFsKCJcImJqXCIiKSkgIT09IDIpIHsKICAkRVJST1IoJyMxOiBzZWFyY2ggPSBTdHJpbmcucHJvdG90eXBlLnNlYXJjaDsgc2VhcmNoKGV2YWwoIlxcImJqXFwiIikpID09PSAyLiBBY3R1YWw6ICcrc2VhcmNoKGV2YWwoIlwiYmpcIiIpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNlYXJjaCAocmVnZXhwKSB3aXRob3V0IGFyZ3VtZW50cyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIHNlYXJjaCgpIGV2YWx1YXRlcyB0byBzZWFyY2goIiIpCmlmICgiIi5zZWFyY2goKSAhPT0gMCkgewogICRFUlJPUignIzE6ICIiLnNlYXJjaCgpID09PSAwLiBBY3R1YWw6ICcrKCIiLnNlYXJjaCgpKSApOwp9CgppZiAoIi0tdW5kZWZpbmVkLS0iLnNlYXJjaCgpICE9IDApIHsKICAkRVJST1IoJyMxOiAiLS11bmRlZmluZWQtLSIuc2VhcmNoKCkgPT09IDAuIEFjdHVhbDogJysoIi0tdW5kZWZpbmVkLS0iLnNlYXJjaCgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBudWxsLCBhbmQgaW5zdGFuY2UgaXMgZnVuY3Rpb24gY2FsbCwgdGhhdCByZXR1cm4gc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcobnVsbCkgZXZhbHVhdGVzIHRvICJudWxsIiBzZWFyY2gobnVsbCkgZXZhbHVhdGVzIHRvIHNlYXJjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNlYXJjaChudWxsKSAhPT0gMSkgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc2VhcmNoKG51bGwpID09PSAxLiBBY3R1YWw6ICcrZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5zZWFyY2gobnVsbCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB4LCBhbmQgaW5zdGFuY2UgaXMgbmV3IFN0cmluZywgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBzZWFyY2godW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gc2VhcmNoKCJ1bmRlZmluZWQiKQppZiAobmV3IFN0cmluZygidW5kZWZpbmVkIikuc2VhcmNoKHgpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLnNlYXJjaCh4KSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoInVuZGVmaW5lZCIpLnNlYXJjaCh4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.12_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB1bmRlZmluZWQsIGFuZCBpbnN0YW5jZSBpcyBuZXcgU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc2VhcmNoKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIHNlYXJjaCgidW5kZWZpbmVkIikKaWYgKFN0cmluZygidW5kZWZpbmVkIikuc2VhcmNoKHVuZGVmaW5lZCkgIT09IDApIHsKICAkRVJST1IoJyMxOiBTdHJpbmcoInVuZGVmaW5lZCIpLnNlYXJjaCh1bmRlZmluZWQpID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nKCJ1bmRlZmluZWQiKS5zZWFyY2godW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB2b2lkIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcgb2JqZWN0IHdpdGggb3ZlcnJpZGVkIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh2b2lkIDApIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBzZWFyY2godm9pZCAwKSBldmFsdWF0ZXMgdG8gc2VhcmNoKCJ1bmRlZmluZWQiKQppZiAoU3RyaW5nKF9fb2JqKS5zZWFyY2godm9pZCAwKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07IFN0cmluZyhfX29iaikuc2VhcmNoKHZvaWQgMCkgPT09IDAuIEFjdHVhbDogJytTdHJpbmcoX19vYmopLnNlYXJjaCh2b2lkIDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbiBjYWxsLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nIG9iamVjdCB3aXRoIG92ZXJyaWRlZCB0b1N0cmluZyBhbmQgdmFsdWVPZiBmdW5jdGlvbnMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHsKICAgIHZhbHVlT2Y6ZnVuY3Rpb24oKXt9LAogICAgdG9TdHJpbmc6dm9pZCAwCn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc2VhcmNoKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIHNlYXJjaCgidW5kZWZpbmVkIikKaWYgKG5ldyBTdHJpbmcoX19vYmopLnNlYXJjaChmdW5jdGlvbigpe30oKSkgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgbmV3IFN0cmluZyhfX29iaikuc2VhcmNoKGZ1bmN0aW9uKCl7fSgpKSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoX19vYmopLnNlYXJjaChmdW5jdGlvbigpe30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJTaW1wbGUgc2VhcmNoIHN1YnN0cmluZyBpbnNpZGUgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYVN0cmluZyA9IG5ldyBTdHJpbmcoInRlc3Qgc3RyaW5nIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChhU3RyaW5nLnNlYXJjaCgic3RyaW5nIikhPT0gNSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsgYVN0cmluZy5zZWFyY2goInN0cmluZyIpPT09IDUuIEFjdHVhbDogJythU3RyaW5nLnNlYXJjaCgic3RyaW5nIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBjYXNlIHNlbnNpdGl2ZSBvZiBzZWFyY2gsIGFyZ3VtZW50IGlzIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGFTdHJpbmcgPSBuZXcgU3RyaW5nKCJ0ZXN0IHN0cmluZyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoYVN0cmluZy5zZWFyY2goIlN0cmluZyIpIT09IC0xKSB7CiAgJEVSUk9SKCcjMTogdmFyIGFTdHJpbmcgPSBuZXcgU3RyaW5nKCJ0ZXN0IHN0cmluZyIpOyBhU3RyaW5nLnNlYXJjaCgiU3RyaW5nIik9PT0gLTEuIEFjdHVhbDogJythU3RyaW5nLnNlYXJjaCgiU3RyaW5nIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBkaXNhYmxpbmcgb2YgY2FzZSBzZW5zaXRpdmUgb2Ygc2VhcmNoLCBhcmd1bWVudCBpcyBSZWdFeHAiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGFTdHJpbmcuc2VhcmNoKC9TdHJpbmcvaSkhPT0gNSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsgYVN0cmluZy5zZWFyY2goL1N0cmluZy9pKT09PSA1LiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goL1N0cmluZy9pKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBjYXNlIHNlbnNpdGl2ZSBvZiBzZWFyY2gsIGFyZ3VtZW50IGlzIFJlZ0V4cCB3aXRoIHVwcGVyY2FzZSBzeW1ib2xzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYlN0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7CnZhciByZWdFeHAgPSAvRm91ci87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChiU3RyaW5nLnNlYXJjaChyZWdFeHApIT09IC0xKSB7CiAgJEVSUk9SKCcjMTogdmFyIGJTdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyB2YXIgcmVnRXhwID0gL0ZvdXIvOyBiU3RyaW5nLnNlYXJjaChyZWdFeHApPT09IC0xLiBBY3R1YWw6ICcrYlN0cmluZy5zZWFyY2gocmVnRXhwKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBjYXNlIHNlbnNpdGl2ZSBvZiBzZWFyY2gsIGFyZ3VtZW50IGlzIFJlZ0V4cCB3aXRob3V0IHVwcGVyY2FzZSBzeW1ib2xzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYlN0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7CnZhciByZWdFeHAgPSAvZm91ci87CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChiU3RyaW5nLnNlYXJjaChyZWdFeHApIT09IDE0KSB7CiAgJEVSUk9SKCcjMTogdmFyIGJTdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyB2YXIgcmVnRXhwID0gL2ZvdXIvOyBiU3RyaW5nLnNlYXJjaChyZWdFeHApPT09IDE0LiBBY3R1YWw6ICcrYlN0cmluZy5zZWFyY2gocmVnRXhwKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJTZWFyY2hpbmcgdGhlIG5vbi1leGlzdGVudCBcIm5vdGV4aXN0XCIgc3Vic3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYVN0cmluZyA9IG5ldyBTdHJpbmcoInRlc3Qgc3RyaW5nIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChhU3RyaW5nLnNlYXJjaCgibm90ZXhpc3QiKSE9PSAtMSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmciKTsgYVN0cmluZy5zZWFyY2goIm5vdGV4aXN0Iik9PT0gLTEuIEFjdHVhbDogJythU3RyaW5nLnNlYXJjaCgibm90ZXhpc3QiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJTaW1wbGUgc2VhcmNoIHNlbnRlbmNlIGluc2lkZSBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmcgcHJvYmUiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGFTdHJpbmcuc2VhcmNoKCJzdHJpbmcgcHJvIikhPT0gNSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygidGVzdCBzdHJpbmcgcHJvYmUiKTsgYVN0cmluZy5zZWFyY2goInN0cmluZyBwcm8iKT09PSA1LiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goInN0cmluZyBwcm8iKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXN1bHRzIG9mIHNlYXJjaCByZWdleHAgd2l0aCBhbmQgd2l0aG91dCBnbG9iYWwgcHJvcGVydGllcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGFTdHJpbmcgPSBuZXcgU3RyaW5nKCJwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIG9mIHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIG9mIHRoZSBncmVhdCBzd29yZCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoYVN0cmluZy5zZWFyY2goL3RoZS8pIT09IGFTdHJpbmcuc2VhcmNoKC90aGUvZykpIHsKICAkRVJST1IoJyMxOiB2YXIgYVN0cmluZyA9IG5ldyBTdHJpbmcoInBvd2VyIG9mIHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIG9mIHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgb2YgdGhlIGdyZWF0IHN3b3JkIik7IGFTdHJpbmcuc2VhcmNoKC90aGUvKT09PSBhU3RyaW5nLnNlYXJjaCgvdGhlL2cpLiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goL3RoZS8pKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXN1bHRzIG9mIHNlYXJjaCByZWdleHAgd2l0aCBhbmQgd2l0aG91dCBnbG9iYWwgcHJvcGVydGllcy4gVW5pY29kZSBzeW1ib2xzIHVzZWQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygicG93ZXIgXHUwMDZGXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgXHUwMDZGXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgcG93ZXIgXHUwMDZGXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgZ3JlYXQgc3dvcmQiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGFTdHJpbmcuc2VhcmNoKC9vZi8pIT09IGFTdHJpbmcuc2VhcmNoKC9vZi9nKSkgewogICRFUlJPUignIzE6IHZhciBhU3RyaW5nID0gbmV3IFN0cmluZygicG93ZXIgXFx1MDA2RlxcdTAwNjYgdGhlIHBvd2VyIG9mIHRoZSBwb3dlciBcXHUwMDZGXFx1MDA2NiB0aGUgcG93ZXIgb2YgdGhlIHBvd2VyIFxcdTAwNkZcXHUwMDY2IHRoZSBwb3dlciBvZiB0aGUgZ3JlYXQgc3dvcmQiKTsgYVN0cmluZy5zZWFyY2goL29mLyk9PT0gYVN0cmluZy5zZWFyY2goL29mL2cpLiBBY3R1YWw6ICcrYVN0cmluZy5zZWFyY2goL29mLykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.12_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E2IiwKCnBhdGg6ICIxNS41LjQuMTIsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5wcm90b3R5cGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5wcm90b3R5cGUgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E3IiwKCnBhdGg6ICIxNS41LjQuMTIsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2ggb2JqZWN0IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5zZWFyY2g7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIHRocm93IGEgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOyAgCiAgfQogICRQUklOVChlKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.12_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E4IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnNlYXJjaCl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuc2VhcmNoKXtpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrO307IGNvdW50ID09PSAwLiBBY3R1YWw6ICcrY291bnQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.12_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEyX0E5IiwKCnBhdGg6ICIxNS41LjQuMTIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zZWFyY2guaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zZWFyY2gubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnNlYXJjaC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc2VhcmNoLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.12_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExMCIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExMSIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuc2xpY2UubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoZmFsc2UsIHRydWUpICE9PSAidCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7ICBfX2luc3RhbmNlLnNsaWNlKGZhbHNlLCB0cnVlKSA9PT0gInQiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zbGljZShmYWxzZSwgdHJ1ZSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3QgYW5kIGZ1bmN0aW9uIGNhbGwsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcsIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB2YWx1ZU9mIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAyO319OwoKdmFyIF9fc3RyID0gIlx1MDAzNUFCQkJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAoc2xpY2UoX19vYmosIGZ1bmN0aW9uKCl7cmV0dXJuIHNsaWNlKDAsMSk7fSgpKSAhPT0gIkJCQiIpIHsKICAgICAgJEVSUk9SKCcjMTogdmFyIHg7IHZhciBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDI7fX07IHZhciBfX3N0ciA9ICJcdTAwMzVBQkJCQUJBQiI7IHNsaWNlKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiBzbGljZSgwLDEpO30oKSkgPT09ICJCQkIiLiBBY3R1YWw6ICcrc2xpY2UoX19vYmosIGZ1bmN0aW9uKCl7cmV0dXJuIHNsaWNlKDAsMSk7fSgpKSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLCBvYmplY3RzIGhhdmUgb3ZlcnJpZGVkIHZhbHVlT2YgZnVuY3Rpb24sIHRoYXQgcmV0dXJuIGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBzbGljZShfX29iaixfX29iajIpOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBzbGljZShfX29iaixfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIT09Imluc3RhcnQiKSB7CiAgICAgICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5zdGFydCIuIEFjdHVhbDogJytlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoIkFCQlx1MDA0MUJBQkFCIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSBzbGljZShfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBzbGljZShfX29iaixfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnN0YXJ0IikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5zdGFydCIuIEFjdHVhbDogJytlKTsKICAgICAgfQogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsKdmFyIF9fb2JqMiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgICB2YXIgeCA9ICJBQkJcdTAwNDFCQUJBQlx1MDAzMUJCQUEiLnNsaWNlKF9fb2JqLCBfX29iajIpOwogICAgJEZBSUwoJyMxOiAidmFyIHggPSBzbGljZShfX29iaixfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgICBpZiAoZSE9PSJpbmVuZCIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImluZW5kIi4gQWN0dWFsOiAnK2UpOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiVXNlZCBvbmUgYXJndW1lbnQsIHRoYXQgaXMgZnVuY3Rpb24oKXt9KCkuIEluc3RhbmNlIGlzIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoInJlcG9ydCIuc2xpY2UoZnVuY3Rpb24oKXt9KCkpICE9PSAicmVwb3J0IikgewogICRFUlJPUignIzE6ICJyZXBvcnQiLnNsaWNlKGZ1bmN0aW9uKCl7fSgpKSA9PT0gInJlcG9ydCIuIEFjdHVhbDogJysicmVwb3J0Ii5zbGljZShmdW5jdGlvbigpe30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjEzIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzbGljZSB3aXRob3V0IGFyZ3VtZW50cy4gSW5zdGFuY2UgaXMgTnVtYmVyIHdpdGggcHJvdG90eXBlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbnVtID0gMTEuMDAxMDAyOwoKTnVtYmVyLnByb3RvdHlwZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7CgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19udW0uc2xpY2UoKSE9PSIxMS4wMDEwMDIiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fbnVtID0gMTEuMDAxMDAyOyBOdW1iZXIucHJvdG90eXBlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsgX19udW0uc2xpY2UoKT09PSIxMS4wMDEwMDIiLiBBY3R1YWw6ICcrX19udW0uc2xpY2UoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZ1bmN0aW9uIGNhbGwgYW5kIHgsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuLiB4IGlzIHVuZGVmaW5lZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2Uuc2xpY2UgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zbGljZShmdW5jdGlvbigpe3JldHVybiB0cnVlO30oKSx4KSAhPT0gImFsc2UiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7ICBfX2luc3RhbmNlLnNsaWNlKGZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fSgpLHgpID09PSAiYWxzZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLnNsaWNlKGZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fSgpLHgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc2xpY2UgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKdmFyIF9fdG9nZ2xlID0gMTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHNsaWNlKGV2YWwoIlwiMVwiIikse3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gIjB4MDAwNyJ9fSkhPT0ib2JqZWN0IikgewogICRFUlJPUignIzE6IHNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsgc2xpY2UoZXZhbCgiXFwiMVxcIiIpLHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuICIweDAwMDcifX0pPT09Im9iamVjdCIuIEFjdHVhbDogJytzbGljZShldmFsKCJcIjFcIiIpLHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuICIweDAwMDcifX0pKTsKfTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIGZ1bmN0aW9uIGNhbGwsIHRoYXQgcmV0dXJuZWQgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvSW50ZWdlcihudWxsKSB5ZWxkcyAwCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc2xpY2UobnVsbCwgLTMpICE9PSAiZ251bGwiKSB7CiAgJEVSUk9SKCcjMTogZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5zbGljZShudWxsLCAtMykgPT09ICJnbnVsbCIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNsaWNlKG51bGwsIC0zKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIGNhbGwgb3RoZXIgc2xpY2Uoc3RhcnQsIGVuZCksIGFuZCBpbnN0YW5jZSBpcyBmdW5jdGlvbiBvYmplY3QsIHRoYXQgaGF2ZSBvdmVycmlkZWQgdmFsdWVPZiBhbmQgdG9TdHJpbmcgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBfX2Z1bmMudmFsdWVPZj1mdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifTsKX19mdW5jLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIF9fZnVuYzt9OwoKRnVuY3Rpb24ucHJvdG90eXBlLnNsaWNlPVN0cmluZy5wcm90b3R5cGUuc2xpY2U7CgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jLnNsaWNlKG51bGwsIEZ1bmN0aW9uKCkuc2xpY2UoX19mdW5jLDUpLmxlbmd0aCkgIT09ICJnbnVsbCIpIHsKICAkRVJST1IoJyMxOiBfX2Z1bmMuc2xpY2UobnVsbCwgRnVuY3Rpb24oKS5zbGljZShfX2Z1bmMsNSkubGVuZ3RoKSA9PT0gImdudWxsIi4gQWN0dWFsOiAnK19fZnVuYy5zbGljZShudWxsLCBGdW5jdGlvbigpLnNsaWNlKF9fZnVuYyw1KS5sZW5ndGgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmMoKXt9OwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHggYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIG5ldyBTdHJpbmcsIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQgeWVsZHMgMCkKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAobmV3IFN0cmluZygidW5kZWZpbmVkIikuc2xpY2UoeCwzKSAhPT0gInVuZCIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygidW5kZWZpbmVkIikuc2xpY2UoeCwzKSA9PT0gInVuZCIuIEFjdHVhbDogJytuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5zbGljZSh4LDMpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHN5bWJvbCBhbmQgdW5kZWZpbmVkLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvSW50ZWdlcigiZSIpIHllbGRzIDAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nKHZvaWQgMCkuc2xpY2UoImUiLHVuZGVmaW5lZCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKHZvaWQgMCkuc2xpY2UoImUiLHVuZGVmaW5lZCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICcrU3RyaW5nKHZvaWQgMCkuc2xpY2UoImUiLHVuZGVmaW5lZCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG5lZ2F0aXZlIG51bWJlciBhbmQgdm9pZCAwLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKG9iamVjdCksIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB0b1N0cmluZyBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vc2luY2Ugdm9pZCAwIHllbGRzIDAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nKF9fb2JqKS5zbGljZSgtNCx2b2lkIDApICE9PSAiaW5lZCIpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OyBTdHJpbmcoX19vYmopLnNsaWNlKC00LHZvaWQgMCkgPT09ICJpbmVkIi4gQWN0dWFsOiAnK1N0cmluZyhfX29iaikuc2xpY2UoLTQsdm9pZCAwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHVuZGVmaW5lZCBhbmQgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKG9iamVjdCksIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB2YWx1ZU9mIGFuZCB0b1N0cmluZyBmdW5jdGlvbnMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHsKICAgIHZhbHVlT2Y6ZnVuY3Rpb24oKXt9LAogICAgdG9TdHJpbmc6dm9pZCAwCn07CgovL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQpIHllbGRzIDAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAobmV3IFN0cmluZyhfX29iaikuc2xpY2UoLyooZnVuY3Rpb24oKXt9KSgpKi91bmRlZmluZWQsX19vYmopICE9PSAiIikgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBuZXcgU3RyaW5nKF9fb2JqKS5zbGljZSgvLyooZnVuY3Rpb24oKXt9KSgpKi8vdW5kZWZpbmVkLF9fb2JqKSA9PT0gIiIuIEFjdHVhbDogJytuZXcgU3RyaW5nKF9fb2JqKS5zbGljZSgvKihmdW5jdGlvbigpe30pKCkqL3VuZGVmaW5lZCxfX29iaikgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyB0eXBlIG9mIHNsaWNlKCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zdHJpbmcuc2xpY2UoKSAhPT0gInN0cmluZyIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IHR5cGVvZiBfX3N0cmluZy5zbGljZSgpID09PSAic3RyaW5nIi4gQWN0dWFsOiAnK3R5cGVvZiBfX3N0cmluZy5zbGljZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBOYU4sIGVuZCBpcyBJbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygndGhpcyBpcyBhIHN0cmluZyBvYmplY3QnKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnNsaWNlKE5hTiwgSW5maW5pdHkpICE9PSAidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKFwndGhpcyBpcyBhIHN0cmluZyBvYmplY3RcJyk7IF9fc3RyaW5nLnNsaWNlKE5hTiwgSW5maW5pdHkpID09PSAidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoTmFOLCBJbmZpbml0eSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNsaWNlIGZyb20gZW1wdHkgU3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zbGljZSgxLDApICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygiIik7IF9fc3RyaW5nLnNsaWNlKDEsMCkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoMSwwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIE5hTiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnNsaWNlKEluZmluaXR5LCBOYU4pICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIE5hTikgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIE5hTikgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIEluZmluaXR5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIEluZmluaXR5KSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnNsaWNlKEluZmluaXR5LCBJbmZpbml0eSkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoSW5maW5pdHksIEluZmluaXR5KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBuZWdhdGl2ZSBmbG9hdCBudW1iZXIsIGVuZCBpcyAwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc2xpY2UoLTAuMDEsMCkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOyBfX3N0cmluZy5zbGljZSgtMC4wMSwwKSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zbGljZSgtMC4wMSwwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCwgZW5kIGlzIHRlc3RlZF9zdHJpbmcubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc2xpY2UoX19zdHJpbmcubGVuZ3RoLCBfX3N0cmluZy5sZW5ndGgpICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc2xpY2UoX19zdHJpbmcubGVuZ3RoLCBfX3N0cmluZy5sZW5ndGgpID09PSAiIi4gQWN0dWFsOiAnK19fc3RyaW5nLnNsaWNlKF9fc3RyaW5nLmxlbmd0aCwgX19zdHJpbmcubGVuZ3RoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCsxLCBlbmQgaXMgMCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnNsaWNlKF9fc3RyaW5nLmxlbmd0aCsxLCAwKSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnNsaWNlKF9fc3RyaW5nLmxlbmd0aCsxLCAwKSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zbGljZShfX3N0cmluZy5sZW5ndGgrMSwgMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyAtSW5maW5pdHksIGVuZCBpcyAtSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zbGljZSgtSW5maW5pdHksIC1JbmZpbml0eSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOyBfX3N0cmluZy5zbGljZSgtSW5maW5pdHksIC1JbmZpbml0eSkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc2xpY2UoLUluZmluaXR5LCAtSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIE9iamVjdCBpbnN0YW5jZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoMCw4KSAhPT0gIltvYmplY3QgIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7IF9faW5zdGFuY2Uuc2xpY2UgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOyBfX2luc3RhbmNlLnNsaWNlKDAsOCkgPT09ICJbb2JqZWN0ICIuIEFjdHVhbDogJytfX2luc3RhbmNlLnNsaWNlKDAsOCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIE9iamVjdCBpbnN0YW5jZSwgdXNlIG90aGVyIHZhbHVlIGZvciBzdGFydCBhbmQgZW5kIHZhbHVlcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoOCxfX2luc3RhbmNlLnRvU3RyaW5nKCkubGVuZ3RoKSAhPT0gIk9iamVjdF0iKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zbGljZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2U7IF9faW5zdGFuY2Uuc2xpY2UoOCxfX2luc3RhbmNlLnRvU3RyaW5nKCkubGVuZ3RoKSA9PT0gIk9iamVjdF0iLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zbGljZSg4LF9faW5zdGFuY2UudG9TdHJpbmcoKS5sZW5ndGgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIE9iamVjdCBpbnN0YW5jZSwgYW5kIGNhbGwgaW5zdGFuY2Uuc2xpY2UoLi4uKS5zbGljZSguLi4pIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9ICBmdW5jdGlvbigpe307CgpfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoLUluZmluaXR5LDgpLnNsaWNlKDEsSW5maW5pdHkpICE9PSAidW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OyBfX2luc3RhbmNlLnNsaWNlID0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsgX19pbnN0YW5jZS5zbGljZSgtSW5maW5pdHksOCkuc2xpY2UoMSxJbmZpbml0eSkgPT09ICJ1bmN0aW9uIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc2xpY2UoLUluZmluaXR5LDgpLnNsaWNlKDEsSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0EzX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja25pZyBpZiBhcHBseWluZyBTdHJpbmcucHJvdG90eXBlLnNsaWNlIHRvIEZ1bmN0aW9uIG9iamVjdCBpbnN0YW5jZSBwYXNzZXMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRkFDVE9SWS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXMudmFsdWUrJyc7IH07Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkodm9pZCAwKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc2xpY2UoMCwxMDApICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2Uuc2xpY2UoMCwxMDApID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc2xpY2UoMCwxMDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX0ZBQ1RPUlkoIHZhbHVlICkgewogICAgdGhpcy52YWx1ZSA9IHZhbHVlLAogICAgdGhpcy5zbGljZT0gU3RyaW5nLnByb3RvdHlwZS5zbGljZTsKICAgIC8vdGhpcy5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.13_A3_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E2IiwKCnBhdGg6ICIxNS41LjQuMTMsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnNsaWNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc2xpY2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNsaWNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.13_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E3IiwKCnBhdGg6ICIxNS41LjQuMTMsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICAkUFJJTlQoZSk7Cn0KCiB9Cn0pOwoK","id":"S15.5.4.13_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E4IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnNsaWNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc2xpY2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnNsaWNlKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5zbGljZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.13_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjEzX0E5IiwKCnBhdGg6ICIxNS41LjQuMTMiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc2xpY2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc2xpY2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnNsaWNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zbGljZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc2xpY2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.13_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCh0cnVlLCBmYWxzZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KHRydWUsIGZhbHNlKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCh0cnVlLCBmYWxzZSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDApIHsKICAkRVJST1IoJyMzOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KHRydWUsIGZhbHNlKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDJCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gdHJ1ZTt9fQp2YXIgX19zdHIgPSAiQUJCXHUwMDQxQkFCQUIiOwoKd2l0aChfX3N0cil7CiAgICBfX3NwbGl0ID0gc3BsaXQoX19vYmosIF9fb2JqMik7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX07IHZhciBfX3N0ciA9ICJBQkJ1MDA0MUJBQkFCIjsgd2l0aChfX3N0cil7X19zcGxpdCA9IHNwbGl0KF9fb2JqLCBfX29iajIpO307IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX07IHZhciBfX3N0ciA9ICJBQkJ1MDA0MUJBQkFCIjsgd2l0aChfX3N0cil7X19zcGxpdCA9IHNwbGl0KF9fb2JqLCBfX29iajIpO307IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMzOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQyQiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB0cnVlO319OyB2YXIgX19zdHIgPSAiQUJCdTAwNDFCQUJBQiI7IHdpdGgoX19zdHIpe19fc3BsaXQgPSBzcGxpdChfX29iaiwgX19vYmoyKTt9OyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiQSIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQyQiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB0cnVlO319OyB2YXIgX19zdHIgPSAiQUJCdTAwNDFCQUJBQiI7IHdpdGgoX19zdHIpe19fc3BsaXQgPSBzcGxpdChfX29iaiwgX19vYmoyKTt9OyBfX3NwbGl0WzBdID09PSAiQSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludGVnZXIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBzcGxpdChfX29iaiwgX19vYmoyKTsKICAgICAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3BsaXQoX19vYmosIF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW50b2ludGVnZXIiKSB7CiAgICAgICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b2ludGVnZXIiLiBBY3R1YWw6ICcrZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50ZWdlciI7fX0KdmFyIF9fc3RyID0gbmV3IFN0cmluZygiQUJCXHUwMDQxQkFCQUIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB0cnkgewogICAgICB2YXIgeCA9IHNwbGl0KF9fb2JqLCBfX29iajIpOwogICAgICAkRkFJTCgnIzE6ICJ2YXIgeCA9IHNwbGl0KF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDJcdTAwNDIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIyIjt9fQoKdmFyIF9fc3BsaXQgPSAiQUJCXHUwMDQxQkFCQUJcdTAwNDJjY15eXHUwMDQyQnZ2JSVCXHUwMDQyeHh4Ii5zcGxpdChfX29iaiwgX19vYmoyKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJ1MDA0MiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIyIjt9fTsgX19zcGxpdCA9ICJBQkJ1MDA0MUJBQkFCdTAwNDJjY15edTAwNDJCdnYlJUJ1MDA0Mnh4eCIuc3BsaXQoX19vYmosIF9fb2JqMik7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAidTAwNDJ1MDA0MiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIyIjt9fTsgX19zcGxpdCA9ICJBQkJ1MDA0MUJBQkFCdTAwNDJjY15edTAwNDJCdnYlJUJ1MDA0Mnh4eCIuc3BsaXQoX19vYmosIF9fb2JqMik7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQydTAwNDIiO319OyB2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiMiI7fX07IF9fc3BsaXQgPSAiQUJCdTAwNDFCQUJBQnUwMDQyY2NeXnUwMDQyQnZ2JSVCdTAwNDJ4eHgiLnNwbGl0KF9fb2JqLCBfX29iajIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiQSIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gInUwMDQydTAwNDIiO319OyB2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiMiI7fX07IF9fc3BsaXQgPSAiQUJCdTAwNDFCQUJBQnUwMDQyY2NeXnUwMDQyQnZ2JSVCdTAwNDJ4eHgiLnNwbGl0KF9fb2JqLCBfX29iajIpOyBfX3NwbGl0WzBdID09PSAiQSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzFdICE9PSAiQUJBQkEiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJ1MDA0MnUwMDQyIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIjIiO319OyBfX3NwbGl0ID0gIkFCQnUwMDQxQkFCQUJ1MDA0MmNjXl51MDA0MkJ2diUlQnUwMDQyeHh4Ii5zcGxpdChfX29iaiwgX19vYmoyKTsgX19zcGxpdFsxXSA9PT0gIkFCQUJBIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Owp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludCI7fX07CnZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAwMS4xMDAwMSk7Ck51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gc3BsaXQoX19vYmosIF9fb2JqMik7CiAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3BsaXQoX19vYmosIF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9pbnQiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvaW50Ii4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvc3RyIjt9fTsKCnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50ZWdlciI7fX07CgpfX0ZBQ1RPUlkucHJvdG90eXBlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19pbnN0YW5jZS5zcGxpdChfX29iaiwgX19vYmoyKTsKICAkRkFJTCgnIzE6ICJ2YXIgeCA9IF9faW5zdGFuY2Uuc3BsaXQoX19vYmosIF9fb2JqMikiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b2ludGVnZXIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19GQUNUT1JZKCB2YWx1ZSApIHsKICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgIHRoaXMudG9TdHJpbmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuIG5ldyBOdW1iZXI7IH07CiAgICB0aGlzLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZSsiIn07Cn0KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgTnVtYmVyLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIC9cdTAwMzdcdTAwMzcvZzt9fTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnRyeSB7CiAgdmFyIF9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX29iaik7CiAgJEZBSUwoJyMxOiAiX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fb2JqKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICghKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiBpcyBpbnN0YW5jZSBvZiBUeXBlRXJyb3IuIEFjdHVhbDogJytlKTsKICB9Cn0KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwLCBhbmQgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZSA9IC9cdTAwMzdcdTAwMzcvZzsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCl9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX3JlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDQpIHsKICAkRVJST1IoJyMzOiB2YXIgX19yZSA9IC91MDAzN3UwMDM3L2c7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gNC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiNiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19yZSA9IC91MDAzN3UwMDM3L2c7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUpOyBfX3NwbGl0WzBdID09PSAiNiIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzFdICE9PSAiNjc2NzYiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fcmUgPSAvdTAwMzd1MDAzNy9nOyBOdW1iZXIucHJvdG90eXBlLnNwbGl0PVN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX3JlKTsgX19zcGxpdFsxXSA9PT0gIjY3Njc2Ii4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fc3BsaXRbMl0gIT09ICIuMDA2IikgewogICRFUlJPUignIzY6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IF9fc3BsaXRbMl0gPT09ICIuMDA2Ii4gQWN0dWFsOiAnK19fc3BsaXRbMl0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzcKaWYgKF9fc3BsaXRbM10gIT09ICIxIikgewogICRFUlJPUignIzc6IHZhciBfX3JlID0gL3UwMDM3dTAwMzcvZzsgTnVtYmVyLnByb3RvdHlwZS5zcGxpdD1TdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSk7IF9fc3BsaXRbM10gPT09ICIxIi4gQWN0dWFsOiAnK19fc3BsaXRbM10gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QxOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fcmUgPSAgbmV3IFJlZ0V4cCgiMDAiKTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gNjc3Njc2NzY3Ny4wMDY3NzExMjI2Nzc1NTUuc3BsaXQoX19yZSwgZXZhbCgiXCIxXCIiKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19yZSA9ICBuZXcgUmVnRXhwKCIwMCIpOyBOdW1iZXIucHJvdG90eXBlLnNwbGl0PVN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSA2Nzc2NzY3Njc3LjAwNjc3MTEyMjY3NzU1NS5zcGxpdChfX3JlLCBldmFsKCIiMSIiKSk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IHZhciBfX3JlID0gIG5ldyBSZWdFeHAoIjAwIik7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUsIGV2YWwoIiIxIiIpKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzM6IHZhciBfX3JlID0gIG5ldyBSZWdFeHAoIjAwIik7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUsIGV2YWwoIiIxIiIpKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIjY3NzY3Njc2NzcuIikgewogICRFUlJPUignIzM6IHZhciBfX3JlID0gIG5ldyBSZWdFeHAoIjAwIik7IE51bWJlci5wcm90b3R5cGUuc3BsaXQ9U3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IDY3NzY3Njc2NzcuMDA2NzcxMTIyNjc3NTU1LnNwbGl0KF9fcmUsIGV2YWwoIiIxIiIpKTsgX19zcGxpdFswXSA9PT0gIjY3NzY3Njc2NzcuIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGJvb2xlYW4gZXhwcmVzc2lvbiwgZnVuY3Rpb24gY2FsbCBhbmQgbnVsbCwgYW5kIGluc3RhbmNlIGlzIEJvb2xlYW4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgiQSIhPT0iXHUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgiQSIhPT0idTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoIkEiIT09InUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDApIHsKICAkRVJST1IoJyMzOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgiQSIhPT0idTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fb2JqX19saW0gPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiA1O319OwoKaWYgKHR5cGVvZiB0b1N0cmluZyA9PT0gInVuZGVmaW5lZCIpewogICAgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCnZhciBfX3NwbGl0ID0gc3BsaXQoZXZhbCgiXCJbXCIiKSxfX29ial9fbGltKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzFdLnN1YnN0cmluZygwLDYpICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzQ6IF9fc3BsaXRbMV0uc3Vic3RyaW5nKDAsNikgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrX19zcGxpdFsxXS5zdWJzdHJpbmcoMCw2KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0IHdpdGhvdXQgYXJndW1lbnRzLCBhbmQgaW5zdGFuY2UgaXMgZW1wdHkgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIHNwbGl0KCkgZXZhbHVhdGVzIHRvIHNwbGl0KCIiLDApCnZhciBfX3NwbGl0ID0gIiIuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX3NwbGl0ICE9PSAib2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3BsaXQgPSAiIi5zcGxpdCgpOyB0eXBlb2YgX19zcGxpdCA9PT0gIm9iamVjdCIuIEFjdHVhbDogJyt0eXBlb2YgX19zcGxpdCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0ID0gIiIuc3BsaXQoKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzM6IF9fc3BsaXQgPSAiIi5zcGxpdCgpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzBdICE9PSAiIikgewogICRFUlJPUignIzQ6IF9fc3BsaXQgPSAiIi5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBudWxsLCBhbmQgaW5zdGFuY2UgaXMgZnVuY3Rpb24gY2FsbCB0aGF0IHJldHVybmVkIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIHNwbGl0KG51bGwpIGV2YWx1YXRlcyB0byBzcGxpdCgibnVsbCIsMCkKdmFyIF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3BsaXQgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc3BsaXQobnVsbCk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAyKSB7CiAgJEVSUk9SKCcjMzogX19zcGxpdCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc3BsaXQobnVsbCk7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMF0gIT09ICJnIikgewogICRFUlJPUignIzQ6IF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOyBfX3NwbGl0WzBdID09PSAiZyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzFdICE9PSAidW5hIikgewogICRFUlJPUignIzU6IF9fc3BsaXQgPSBmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnNwbGl0KG51bGwpOyBfX3NwbGl0WzFdID09PSAidW5hIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB4LCBhbmQgaW5zdGFuY2UgaXMgbmV3IFN0cmluZy4geCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gIiIgc3BsaXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gc3BsaXQoIiIsMCkKdmFyIF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgX19zcGxpdCA9IG5ldyBTdHJpbmcoIjF1bmRlZmluZWQiKS5zcGxpdCh4KTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogdmFyIHg7IF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiB2YXIgeDsgX19zcGxpdCA9IG5ldyBTdHJpbmcoIjF1bmRlZmluZWQiKS5zcGxpdCh4KTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFswXSAhPT0gIjEiKSB7CiAgJEVSUk9SKCcjNDogdmFyIHg7IF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7IF9fc3BsaXRbMF0gPT09ICIxIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNTogdmFyIHg7IF9fc3BsaXQgPSBuZXcgU3RyaW5nKCIxdW5kZWZpbmVkIikuc3BsaXQoeCk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB1bmRlZmluZWQsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc3BsaXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gc3BsaXQoInVuZGVmaW5lZCIsMCkKdmFyIF9fc3BsaXQgPSBTdHJpbmcoInVuZGVmaW5lZGQiKS5zcGxpdCh1bmRlZmluZWQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3BsaXQgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IHR5cGVvZiBfX3NwbGl0ID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK3R5cGVvZiBfX3NwbGl0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzI6IF9fc3BsaXQgPSBTdHJpbmcoInVuZGVmaW5lZGQiKS5zcGxpdCh1bmRlZmluZWQpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAyKSB7CiAgJEVSUk9SKCcjMzogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXRbMF0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsxXSAhPT0gImQiKSB7CiAgJEVSUk9SKCcjNTogX19zcGxpdCA9IFN0cmluZygidW5kZWZpbmVkZCIpLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXRbMV0gPT09ICJkIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyB2b2lkIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcob2JqZWN0KSwgb2JqZWN0IGhhdmUgb3ZlcnJpZGVkIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vc2luY2UgVG9TdHJpbmcodm9pZCAwKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgc3BsaXQodm9pZCAwKSBldmFsdWF0ZXMgdG8gc3BsaXQoInVuZGVmaW5lZCIpCnZhciBfX3NwbGl0ID0gU3RyaW5nKF9fb2JqKS5zcGxpdCh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3BsaXQgIT09ICJvYmplY3QiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzM6IF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07IF9fc3BsaXQgPSBTdHJpbmcoX19vYmopLnNwbGl0KHZvaWQgMCk7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgX19zcGxpdFswXSAhPT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgX19zcGxpdCA9IFN0cmluZyhfX29iaikuc3BsaXQodm9pZCAwKTsgX19zcGxpdFsxXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyBmdW5jdGlvbigpe30oKSwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhvYmplY3QpLCBvYmplY3QgaGF2ZSBvdmVycmlkZWQgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7CiAgICB2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwKICAgIHRvU3RyaW5nOnZvaWQgMAp9OwoKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBzcGxpdCh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byBzcGxpdCgidW5kZWZpbmVkIikKdmFyIF9fc3BsaXQgPSBuZXcgU3RyaW5nKF9fb2JqKS5zcGxpdChmdW5jdGlvbigpe30oKSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19zcGxpdCAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19zcGxpdCA9IG5ldyBTdHJpbmcoX19vYmopLnNwbGl0KGZ1bmN0aW9uKCl7fSgpKTsgdHlwZW9mIF9fc3BsaXQgPT09ICJvYmplY3QiLiBBY3R1YWw6ICcrdHlwZW9mIF9fc3BsaXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fc3BsaXQgPSBuZXcgU3RyaW5nKF9fb2JqKS5zcGxpdChmdW5jdGlvbigpe30oKSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19zcGxpdCA9IG5ldyBTdHJpbmcoX19vYmopLnNwbGl0KGZ1bmN0aW9uKCl7fSgpKTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19zcGxpdCA9IG5ldyBTdHJpbmcoX19vYmopLnNwbGl0KGZ1bmN0aW9uKCl7fSgpKTsgX19zcGxpdFswXSAhPT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fc3BsaXQgPSBuZXcgU3RyaW5nKF9fb2JqKS5zcGxpdChmdW5jdGlvbigpe30oKSk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwiLFwiKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwib25lLHR3byx0aHJlZSxmb3VyLGZpdmVcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiLCIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSA1KSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXQubGVuZ3RoID09PSA1LiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXRbMF0gPT09ICJvbmUiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gInR3byIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiwiKTsgX19zcGxpdFsxXSA9PT0gInR3byIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAidGhyZWUiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXRbMl0gPT09ICJ0aHJlZSIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3NwbGl0WzNdICE9PSAiZm91ciIpIHsKICAkRVJST1IoJyM2OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiwiKTsgX19zcGxpdFszXSA9PT0gImZvdXIiLiBBY3R1YWw6ICcrX19zcGxpdFszXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNwppZiAoX19zcGxpdFs0XSAhPT0gImZpdmUiKSB7CiAgJEVSUk9SKCcjNzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIsIik7IF9fc3BsaXRbNF0gPT09ICJmaXZlIi4gQWN0dWFsOiAnK19fc3BsaXRbNF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxMjMpLCBpbnN0YW5jZSBpcyBcInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3RcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOwp2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoMTIzKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KDEyMyk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KDEyMyk7IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvciAoIHZhciBpID0gMDsgaSA8IF9fZXhwZWN0ZWQubGVuZ3RoOyBpKysgKSB7CiAgICBpZiAoX19leHBlY3RlZFtpXSE9PV9fc3BsaXRbaV0pIHsKICAgICAgJEVSUk9SKCcjMy4nK2krJzogdmFyIF9fc3RyaW5nID0gInRoaXMxMjNpczEyM2ExMjNzdHJpbmcxMjNvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KDEyMyk7IF9fZXhwZWN0ZWRbJytpKyddPT09X19zcGxpdFsnK2krJ10uIEFjdHVhbDogJytfX2V4cGVjdGVkW2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIjpcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcIm9uZS0xLHR3by0yLGZvdXItNFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEsdHdvLTIsZm91ci00Iik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCI6Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIjoiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIjoiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZS0xLHR3by0yLGZvdXItNCIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSx0d28tMixmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCI6Iik7IF9fc3BsaXRbMF0gPT09ICJvbmUtMSx0d28tMixmb3VyLTQiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcInItNDJcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcIm9uZS0xIHR3by0yIGZvdXItNFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJyLTQyIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoInItNDIiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoInItNDIiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZS0xIHR3by0yIGZvdXItNCIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiBmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJyLTQyIik7IF9fc3BsaXRbMF0gPT09ICJvbmUtMSB0d28tMiBmb3VyLTQiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIi00XCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUtMSB0d28tMiBmb3VyLTRcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiLTQiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiLTQiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIi00Iik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUtMSB0d28tMiBmb3VyIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIi00Iik7IF9fc3BsaXRbMF0gPT09ICJvbmUtMSB0d28tMiBmb3VyIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiBmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCItNCIpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIm9uXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUtMSB0d28tMiBmb3VyLTRcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgib24iKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgib24iKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm9uIik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgZm91ci00Iik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgib24iKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICJlLTEgdHdvLTIgZm91ci00IikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm9uIik7IF9fc3BsaXRbMV0gPT09ICJlLTEgdHdvLTIgZm91ci00Ii4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIlwiKSwgaW5zdGFuY2UgaXMgZW1wdHkgU3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0WzBdID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIiBcIiksIGluc3RhbmNlIGlzIGVtcHR5IFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIlwiKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiIFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiAiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0WzBdID09PSAiICIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIiBcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcIiBcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiAiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICIiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFsxXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QxOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcInhcIiksIGluc3RhbmNlIGlzIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gIiI7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJ4Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9ICIiOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIngiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9ICIiOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIngiKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSAiIjsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJ4Iik7IF9fc3BsaXRbMF0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwiIFwiKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwib25lIHR3byB0aHJlZSBmb3VyIGZpdmVcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiICIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSA1KSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXQubGVuZ3RoID09PSA1LiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXRbMF0gPT09ICJvbmUiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gInR3byIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFsxXSA9PT0gInR3byIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAidGhyZWUiKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXRbMl0gPT09ICJ0aHJlZSIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX3NwbGl0WzNdICE9PSAiZm91ciIpIHsKICAkRVJST1IoJyM2OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIGZvdXIgZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiAiKTsgX19zcGxpdFszXSA9PT0gImZvdXIiLiBBY3R1YWw6ICcrX19zcGxpdFszXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNwppZiAoX19zcGxpdFs0XSAhPT0gImZpdmUiKSB7CiAgJEVSUk9SKCcjNzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIgIik7IF9fc3BsaXRbNF0gPT09ICJmaXZlIi4gQWN0dWFsOiAnK19fc3BsaXRbNF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChuZXcgUmVnRXhwKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgdGhyZWUtMyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChuZXcgUmVnRXhwKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgdGhyZWUtMyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQobmV3IFJlZ0V4cCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fc3RyaW5nLmxlbmd0aCkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIHRocmVlLTMiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KG5ldyBSZWdFeHApOyBfX3NwbGl0Lmxlbmd0aCA9PT0gX19zdHJpbmcubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yICggdmFyIGkgPSAwOyBpIDwgX19zdHJpbmcubGVuZ3RoOyBpKysgKSB7CiAgICBpZiAoX19zdHJpbmcuY2hhckF0KGkpIT09X19zcGxpdFtpXSkgewogICAgICAkRVJST1IoJyMzLicraSsnOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiB0aHJlZS0zIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChuZXcgUmVnRXhwKTsgX19zdHJpbmcuY2hhckF0KCcraSsnKT09PV9fc3BsaXRbJytpKyddLiBBY3R1YWw6ICcrX19zdHJpbmcuY2hhckF0KGkpKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T20"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxsXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImxsIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibGwiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibGwiKTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibGwiKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJsbCIpOyBfX3NwbGl0WzFdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T21"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImwiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibCIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMy4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJsIik7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJsIik7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAibyIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImwiKTsgX19zcGxpdFsyXSA9PT0gIm8iLiBBY3R1YWw6ICcrX19zcGxpdFsyXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T22"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcInhcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgieCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIngiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgieCIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGVsbG8iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJ4Iik7IF9fc3BsaXRbMF0gPT09ICJoZWxsbyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T23"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImhcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImgiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaCIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaCIpOyBfX3NwbGl0WzBdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gImVsbG8iKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJoIik7IF9fc3BsaXRbMV0gPT09ICJlbGxvIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T24"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcIm9cIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm8iKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibyIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMi4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGVsbCIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIm8iKTsgX19zcGxpdFswXSA9PT0gImhlbGwiLiBBY3R1YWw6ICcrX19zcGxpdFswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAiIikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgibyIpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T25"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImhlbGxvXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImhlbGxvIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG8iKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG8iKTsgX19zcGxpdC5sZW5ndGggPT09IDIuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImhlbGxvIik7IF9fc3BsaXRbMF0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFswXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAiIikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG8iKTsgX19zcGxpdFsxXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T26"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCh1bmRlZmluZWQpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodW5kZWZpbmVkKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KHVuZGVmaW5lZCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodW5kZWZpbmVkKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlbGxvIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh1bmRlZmluZWQpOyBfX3NwbGl0WzBdID09PSAiaGVsbG8iLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T27"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImhlbGxvdGhlcmVcIiksIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG90aGVyZSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoImhlbGxvdGhlcmUiKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiaGVsbG90aGVyZSIpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGVsbG8iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCJoZWxsb3RoZXJlIik7IF9fc3BsaXRbMF0gPT09ICJoZWxsbyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T28"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QyOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxKSwgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoMTAwMTExMTIyMTMzMTQ0MTU1KTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KDEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbIiIsIjAwIiwiIiwiIiwiIiwiMjIiLCIzMyIsIjQ0IiwiNjAiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T29"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KC8gLywyKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwib25lIHR3byB0aHJlZSBmb3VyIGZpdmVcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8gLywyKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8gLywyKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMikgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgvIC8sMik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJvbmUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSBmb3VyIGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8gLywyKTsgX19zcGxpdFswXSA9PT0gIm9uZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAidHdvIikgewogICRFUlJPUignIzQ6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUgZm91ciBmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgvIC8sMik7IF9fc3BsaXRbMV0gPT09ICJ0d28iLiBBY3R1YWw6ICcrX19zcGxpdFsxXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDEpLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwxKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T30"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDIpLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwyKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiLCIwMCJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T31"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDApLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwwKTsKCnZhciBfX2V4cGVjdGVkID0gW107CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09IF9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyMzOiBfX3NwbGl0WzBdID09PSAnK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T32"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLDEwMCksIGluc3RhbmNlIGlzIE51bWJlciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDExMTEyMjEzMzE0NDE1NSk7CgpOdW1iZXIucHJvdG90eXBlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgxLDEwMCk7Cgp2YXIgX19leHBlY3RlZCA9IFsiIiwiMDAiLCIiLCIiLCIiLCIyMiIsIjMzIiwiNDQiLCI2MCJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T33"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLHZvaWQgMCksIGluc3RhbmNlIGlzIE51bWJlciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDExMTEyMjEzMzE0NDE1NSk7CgpOdW1iZXIucHJvdG90eXBlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgxLHZvaWQgMCk7Cgp2YXIgX19leHBlY3RlZCA9IFsiIiwiMDAiLCIiLCIiLCIiLCIyMiIsIjMzIiwiNDQiLCI2MCJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMzogX19zcGxpdFtpbmRleF0gPT09IF9fZXhwZWN0ZWRbaW5kZXhdLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T34"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLCBNYXRoLnBvdygyLDMyKS0xKSwgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoMTAwMTExMTIyMTMzMTQ0MTU1KTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KDEsIE1hdGgucG93KDIsMzIpLTEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbIiIsIjAwIiwiIiwiIiwiIiwiMjIiLCIzMyIsIjQ0IiwiNjAiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0W2luZGV4XSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T35"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLFwiYm9vXCIpLCBpbnN0YW5jZSBpcyBOdW1iZXIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigxMDAxMTExMjIxMzMxNDQxNTUpOwoKTnVtYmVyLnByb3RvdHlwZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoMSwgImJvbyIpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T36"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdCgxLC1NYXRoLnBvdygyLDMyKSsxKSwgaW5zdGFuY2UgaXMgTnVtYmVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoMTAwMTExMTIyMTMzMTQ0MTU1KTsKCk51bWJlci5wcm90b3R5cGUuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KDEsIC1NYXRoLnBvdygyLDMyKSsxKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T37"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIixOYU4pLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgTmFOKTsKCnZhciBfX2V4cGVjdGVkID0gW107CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCBOYU4pOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIE5hTik7IF9fZXhwZWN0ZWQgPSBbXTsgX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09IF9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyMzOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgTmFOKTsgX19leHBlY3RlZCA9IFtdOyBfX3NwbGl0WzBdID09PSAnK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7Cn0KLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T38"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1QzOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwwKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOwoKdmFyIF9fZXhwZWN0ZWQgPSBbXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSBfX2V4cGVjdGVkWzBdKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDApOyBfX2V4cGVjdGVkID0gW107IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T39"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwiXCIpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUgdHdvIHRocmVlXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX3N0cmluZy5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7IF9fc3BsaXQubGVuZ3RoID09PSBfX3N0cmluZy5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lIHR3byB0aHJlZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoIiIpOyBfX3NwbGl0WzBdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3NwbGl0WzFdICE9PSAibiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7IF9fc3BsaXRbMV0gPT09ICJuIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fc3BsaXRbMTFdICE9PSAiZSIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUgdHdvIHRocmVlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgiIik7IF9fc3BsaXRbMTFdID09PSAiZSIuIEFjdHVhbDogJytfX3NwbGl0WzExXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNgppZiAoX19zcGxpdFsxMl0gIT09ICJlIikgewogICRFUlJPUignIzY6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSB0d28gdGhyZWUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCIiKTsgX19zcGxpdFsxMl0gPT09ICJlIi4gQWN0dWFsOiAnK19fc3BsaXRbMTJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwxKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAxKTsgX19leHBlY3RlZCA9IFsiaGUiXTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgMSk7IF9fZXhwZWN0ZWQgPSBbImhlIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSBfX2V4cGVjdGVkWzBdKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDEpOyBfX2V4cGVjdGVkID0gWyJoZSJdOyBfX3NwbGl0WzBdID09PSAnK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7Cn0KLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T40"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwyKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDIpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIiwiIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAyKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiXTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgMik7IF9fZXhwZWN0ZWQgPSBbImhlIiwiIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAyKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiXTsgX19zcGxpdFtpbmRleF0gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.14_A2_T41"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiwzKSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDMpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgMyk7IF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAzKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCAzKTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T42"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q0MyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzcGxpdChcImxcIiw0KSwgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgibCIsIDQpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImhlbGxvIik7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCJsIiwgNCk7IF9fZXhwZWN0ZWQgPSBbImhlIiwiIiwibyJdOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCA0KTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IHZhciBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiaGVsbG8iKTsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoImwiLCA0KTsgX19leHBlY3RlZCA9IFsiaGUiLCIiLCJvIl07IF9fc3BsaXRbaW5kZXhdID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T43"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KC8sLyksIGluc3RhbmNlIGlzIFN0cmluZyhcIm9uZS0xLHR3by0yLGZvdXItNFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEsdHdvLTIsZm91ci00Iik7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8sLyk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdC5sZW5ndGggPT09IDMuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZS0xIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdFswXSA9PT0gIm9uZS0xIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICJ0d28tMiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSx0d28tMixmb3VyLTQiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KC8sLyk7IF9fc3BsaXRbMV0gPT09ICJ0d28tMiIuIEFjdHVhbDogJytfX3NwbGl0WzFdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAiZm91ci00IikgewogICRFUlJPUignIzU6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xLHR3by0yLGZvdXItNCIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoLywvKTsgX19zcGxpdFsyXSA9PT0gImZvdXItNCIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KFwnXCcpLCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUtMSB0d28tMiBmb3VyLTRcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIHRocmVlLTMiKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoJycpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUtMSB0d28tMiB0aHJlZS0zIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChcJ1wnKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19zdHJpbmcubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLTEgdHdvLTIgdGhyZWUtMyIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoXCdcJyk7IF9fc3BsaXQubGVuZ3RoID09PSBfX3N0cmluZy5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IgKCB2YXIgaSA9IDA7IGkgPCBfX3N0cmluZy5sZW5ndGg7IGkrKyApIHsKICAgIGlmIChfX3NwbGl0W2ldIT09X19zdHJpbmcuY2hhckF0KGkpKSB7CiAgICAgICRFUlJPUignIzMuJytpKyc6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZS0xIHR3by0yIHRocmVlLTMiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KFwnXCcpOyBfX3NwbGl0WycraSsnXT09PV9fc3RyaW5nLmNoYXJBdCgnK2krJykuIEFjdHVhbDogJytfX3NwbGl0W2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KHZvaWQgMCksIGluc3RhbmNlIGlzIFwidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdFwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7CnZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodm9pZCAwKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodm9pZCAwKTsgX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yICggdmFyIGkgPSAwOyBpIDwgX19leHBlY3RlZC5sZW5ndGg7IGkrKyApIHsKICAgIGlmIChfX2V4cGVjdGVkW2ldIT09X19zcGxpdFtpXSkgewogICAgICAkRVJST1IoJyMzLicraSsnOiB2YXIgX19zdHJpbmcgPSAidGhpc3VuZGVmaW5lZGlzdW5kZWZpbmVkYXVuZGVmaW5lZHN0cmluZ3VuZGVmaW5lZG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodm9pZCAwKTsgX19leHBlY3RlZFsnK2krJ109PT0nK19fc3BsaXRbaV0rJy4gQWN0dWFsOiAnK19fZXhwZWN0ZWRbaV0pOwogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.14_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KG51bGwpLCBpbnN0YW5jZSBpcyBcInRoaXNudWxsaXNudWxsYW51bGxzdHJpbmdudWxsb2JqZWN0XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJ0aGlzbnVsbGlzbnVsbGFudWxsc3RyaW5nbnVsbG9iamVjdCI7CnZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChudWxsKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gInRoaXNudWxsaXNudWxsYW51bGxzdHJpbmdudWxsb2JqZWN0IjsgdmFyIF9fZXhwZWN0ZWQgPSBbInRoaXMiLCAiaXMiLCAiYSIsICJzdHJpbmciLCAib2JqZWN0Il07IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChudWxsKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSAidGhpc251bGxpc251bGxhbnVsbHN0cmluZ251bGxvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KG51bGwpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IgKCB2YXIgaSA9IDA7IGkgPCBfX2V4cGVjdGVkLmxlbmd0aDsgaSsrICkgewogICAgaWYgKF9fZXhwZWN0ZWRbaV0hPT1fX3NwbGl0W2ldKSB7CiAgICAgICRFUlJPUignIzMuJytpKyc6IHZhciBfX3N0cmluZyA9ICJ0aGlzbnVsbGlzbnVsbGFudWxsc3RyaW5nbnVsbG9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQobnVsbCk7IF9fZXhwZWN0ZWRbJytpKyddPT09JytfX3NwbGl0W2ldKycuIEFjdHVhbDogJytfX2V4cGVjdGVkW2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDYWxsIHNwbGl0KHRydWUpLCBpbnN0YW5jZSBpcyBcInRoaXN0cnVlaXN0cnVlYXRydWVzdHJpbmd0cnVlb2JqZWN0XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9ICJ0aGlzdHJ1ZWlzdHJ1ZWF0cnVlc3RyaW5ndHJ1ZW9iamVjdCI7CnZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh0cnVlKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gInRoaXN0cnVlaXN0cnVlYXRydWVzdHJpbmd0cnVlb2JqZWN0IjsgdmFyIF9fZXhwZWN0ZWQgPSBbInRoaXMiLCAiaXMiLCAiYSIsICJzdHJpbmciLCAib2JqZWN0Il07IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCh0cnVlKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSAidGhpc3RydWVpc3RydWVhdHJ1ZXN0cmluZ3RydWVvYmplY3QiOyB2YXIgX19leHBlY3RlZCA9IFsidGhpcyIsICJpcyIsICJhIiwgInN0cmluZyIsICJvYmplY3QiXTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KHRydWUpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IgKCB2YXIgaSA9IDA7IGkgPCBfX2V4cGVjdGVkLmxlbmd0aDsgaSsrICkgewogICAgaWYgKF9fZXhwZWN0ZWRbaV0hPT1fX3NwbGl0W2ldKSB7CiAgICAgICRFUlJPUignIzMuJytpKyc6IHZhciBfX3N0cmluZyA9ICJ0aGlzdHJ1ZWlzdHJ1ZWF0cnVlc3RyaW5ndHJ1ZW9iamVjdCI7IHZhciBfX2V4cGVjdGVkID0gWyJ0aGlzIiwgImlzIiwgImEiLCAic3RyaW5nIiwgIm9iamVjdCJdOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQodHJ1ZSk7IF9fZXhwZWN0ZWRbJytpKyddPT09JytfX3NwbGl0W2ldKycuIEFjdHVhbDogJytfX2V4cGVjdGVkW2ldKTsKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.14_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBTdHJpbmcoXCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZVwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiKTsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJvbmUsdHdvLHRocmVlLGZvdXIsZml2ZSIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIm9uZSx0d28sdGhyZWUsZm91cixmaXZlIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAib25lLHR3byx0aHJlZSxmb3VyLGZpdmUiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgbmV3IFN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZzsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIiIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A3_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiSW5zdGFuY2UgaXMgU3RyaW5nKFwiIFwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCIgIik7IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdCgpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIiAiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiICIpOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIiAiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBPYmplY3QoKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJbb2JqZWN0IE9iamVjdF0iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KCk7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiW29iamVjdCBPYmplY3RdIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBmdW5jdGlvbigpe30iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBmdW5jdGlvbigpe307IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBmdW5jdGlvbigpe307IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdLnN1YnN0cmluZygwLDgpICE9PSAiZnVuY3Rpb24iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBmdW5jdGlvbigpe307IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdLnN1YnN0cmluZygwLDgpID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6ICcrX19zcGxpdFswXS5zdWJzdHJpbmcoMCw4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBOdW1iZXIoTmFOKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKE5hTik7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKE5hTik7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiTmFOIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A3_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBOdW1iZXIoLTEyMzQ1Njc4OTApIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTEyMzQ1Njc4OTApOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKC0xMjM0NTY3ODkwKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTEyMzQ1Njc4OTApOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIi0xMjM0NTY3ODkwIikgewogICRFUlJPUignIzM6IHZhciBfX2luc3RhbmNlID0gbmV3IE51bWJlcigtMTIzNDU2Nzg5MCk7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiLTEyMzQ1Njc4OTAiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBOdW1iZXIoLTFlMjEpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTFlMjEpOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKC0xZTIxKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoLTFlMjEpOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19pbnN0YW5jZS50b1N0cmluZygpKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKC0xZTIxKTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXRbMF0gPT09IF9faW5zdGFuY2UudG9TdHJpbmcoKS4gQWN0dWFsOiAnK19fc3BsaXRbMF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A3_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBNYXRoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IE1hdGg7CgpfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsKCnZhciBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19pbnN0YW5jZSA9IE1hdGg7IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9faW5zdGFuY2UgPSBNYXRoOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIltvYmplY3QgTWF0aF0iKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9faW5zdGFuY2UgPSBNYXRoOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIltvYmplY3QgTWF0aF0iLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBBcnJheSgxLDIsMyw0LDUpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gIjEsMiwzLDQsNSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdFswXSA9PT0gIjEsMiwzLDQsNSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A3_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0EzX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7Cgp2YXIgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5zcGxpdCA9IFN0cmluZy5wcm90b3R5cGUuc3BsaXQ7IF9fc3BsaXQgPSBfX2luc3RhbmNlLnNwbGl0KCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnNwbGl0ID0gU3RyaW5nLnByb3RvdHlwZS5zcGxpdDsgX19zcGxpdCA9IF9faW5zdGFuY2Uuc3BsaXQoKTsgX19zcGxpdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImZhbHNlIikgewogICRFUlJPUignIzM6IHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2Uuc3BsaXQgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyBfX3NwbGl0ID0gX19pbnN0YW5jZS5zcGxpdCgpOyBfX3NwbGl0WzBdID09PSAiZmFsc2UiLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A3_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudCBpcyByZWdleHAgL2wvLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IC9sLzsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDMpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOyBfX3NwbGl0Lmxlbmd0aCA9PT0gMy4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3NwbGl0WzBdICE9PSAiaGUiKSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsyXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsgX19zcGxpdFsyXSA9PT0gIm8iLiBBY3R1YWw6ICcrX19zcGxpdFsyXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgbmV3IFJlZ0V4cCwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSBuZXcgUmVnRXhwOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyJoIiwiZSIsImwiLCJsIiwibyJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyMzLicraW5kZXgrJzogX19zcGxpdFsnK2luZGV4KyddID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAwLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDApOwoKdmFyIF9fZXhwZWN0ZWQgPSBbXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAxLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDEpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFswXSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAyLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDIpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiLCAiZSJdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyMzLicraW5kZXgrJzogX19zcGxpdFsnK2luZGV4KyddID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCAzLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDMpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiLCAiZSIsICJsIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBpbmRleD0wOyBpbmRleDxfX2V4cGVjdGVkLmxlbmd0aDsgaW5kZXgrKykgewogIGlmIChfX3NwbGl0W2luZGV4XSAhPT0gX19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCA0LCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiaGVsbG9cIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7Cgp2YXIgX19yZSA9IG5ldyBSZWdFeHA7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIDQpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImgiLCAiZSIsICJsIiAsImwiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCB2b2lkIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gbmV3IFJlZ0V4cDsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsKCnZhciBfX2V4cGVjdGVkID0gWyJoIiwgImUiLCAibCIsICJsIiwgIm8iXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxNyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCB1bmRlZmluZWQsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gbmV3IFJlZ0V4cDsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsKCnZhciBfX2V4cGVjdGVkID0gWyJoIiwgImUiLCAibCIsICJsIiwgIm8iXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T17"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxOCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBuZXcgUmVnRXhwIGFuZCBcImhpXCIsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gbmV3IFJlZ0V4cDsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgImhpIik7Cgp2YXIgX19leHBlY3RlZCA9IFtdOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzI6IF9fc3BsaXQubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fc3BsaXQubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19zcGxpdFtpbmRleF0gIT09IF9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyMzLicraW5kZXgrJzogX19zcGxpdFsnK2luZGV4KyddID09PSAnK19fZXhwZWN0ZWRbaW5kZXhdKycuIEFjdHVhbDogJytfX3NwbGl0W2luZGV4XSApOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QxOSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9cXHMvLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiYSBiIGMgZGUgZlwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiYSBiIGMgZGUgZiIpOwoKdmFyIF9fcmUgPSAvXHMvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyJhIiwiYiIsImMiLCJkZSIsImYiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T19"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDAsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDApIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMCk7IF9fc3BsaXQubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSByZWdleHAgL1xccy8gYW5kIDMsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJhIGIgYyBkZSBmXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJhIGIgYyBkZSBmIik7Cgp2YXIgX19yZSA9IC9ccy87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7Cgp2YXIgX19leHBlY3RlZCA9IFsiYSIsImIiLCJjIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBpbmRleD0wOyBpbmRleDxfX2V4cGVjdGVkLmxlbmd0aDsgaW5kZXgrKykgewogIGlmIChfX3NwbGl0W2luZGV4XSAhPT0gX19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T20"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9cXFgvLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKFwiYSBiIGMgZGUgZlwiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiYSBiIGMgZGUgZiIpOwoKdmFyIF9fcmUgPSAvWC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImEgYiBjIGRlIGYiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gX19leHBlY3RlZFswXSkgewogICRFUlJPUignIzM6IF9fc3BsaXRbMF0gPT09ICcrX19leHBlY3RlZFswXSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T21"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMiIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9cXGQrLywgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImRmZTIzaXUgMzQgPSs2NS0tXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJkZmUyM2l1IDM0ID0rNjUtLSIpOwoKdmFyIF9fcmUgPSAvXGQrLzsKCnZhciBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSk7Cgp2YXIgX19leHBlY3RlZCA9IFsiZGZlIiwiaXUgIiwiID0rIiwiLS0iXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T22"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyMyIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIFJlZ0V4cChcJ1xcXFxkK1wnKSwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImRmZTIzaXUgMzQgPSs2NS0tXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJkZmUyM2l1IDM0ID0rNjUtLSIpOwoKdmFyIF9fcmUgPSBuZXcgUmVnRXhwKCdcXGQrJyk7Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUpOwoKdmFyIF9fZXhwZWN0ZWQgPSBbImRmZSIsIml1ICIsIiA9KyIsIi0tIl07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMjogX19zcGxpdC5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKZm9yKHZhciBpbmRleD0wOyBpbmRleDxfX2V4cGVjdGVkLmxlbmd0aDsgaW5kZXgrKykgewogIGlmIChfX3NwbGl0W2luZGV4XSAhPT0gX19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzMuJytpbmRleCsnOiBfX3NwbGl0WycraW5kZXgrJ10gPT09ICcrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fc3BsaXRbaW5kZXhdICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T23"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyNCIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgcmVnZXhwIC9bYS16XS8sIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJhYmNcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImFiYyIpOwoKdmFyIF9fcmUgPSAvW2Etel0vOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiLCIiLCIiLCIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T24"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QyNSIsCgpwYXRoOiAiMTUuNS40LjE0IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnQgaXMgUmVnRXhwKFwnW2Etel1cJyksIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJhYmNcIikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImFiYyIpOwoKdmFyIF9fcmUgPSBuZXcgUmVnRXhwKCdbYS16XScpOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlKTsKCnZhciBfX2V4cGVjdGVkID0gWyIiLCIiLCIiLCIiXTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3BsaXQuY29uc3RydWN0b3IgIT09IEFycmF5KSB7CiAgJEVSUk9SKCcjMTogX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMyOiBfX3NwbGl0Lmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwpmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fc3BsaXRbaW5kZXhdICE9PSBfX2V4cGVjdGVkW2luZGV4XSkgewogICAgJEVSUk9SKCcjMy4nK2luZGV4Kyc6IF9fc3BsaXRbJytpbmRleCsnXSA9PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19zcGxpdFtpbmRleF0gKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T25"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1QzIiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDEsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDEpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMSk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMSk7IF9fc3BsaXQubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMSk7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q0IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDIsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMik7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMik7IF9fc3BsaXQubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMik7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDIpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q1IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDMsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDMpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDMpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7IF9fc3BsaXQubGVuZ3RoID09PSAzLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsMyk7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDMpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsyXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDMpOyBfX3NwbGl0WzJdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q2IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIDQsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcoXCJoZWxsb1wiKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsKCnZhciBfX3JlID0gL2wvOwoKdmFyIF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsNCk7IF9fc3BsaXQuY29uc3RydWN0b3IgPT09IEFycmF5LiBBY3R1YWw6ICcrX19zcGxpdC5jb25zdHJ1Y3RvciApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zcGxpdC5sZW5ndGggIT09IDMpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsNCk7IF9fc3BsaXQubGVuZ3RoID09PSAzLiBBY3R1YWw6ICcrX19zcGxpdC5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fc3BsaXRbMF0gIT09ICJoZSIpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsNCk7IF9fc3BsaXRbMF0gPT09ICJoZSIuIEFjdHVhbDogJytfX3NwbGl0WzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fc3BsaXRbMV0gIT09ICIiKSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDQpOyBfX3NwbGl0WzFdID09PSAiIi4gQWN0dWFsOiAnK19fc3BsaXRbMV0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoX19zcGxpdFsyXSAhPT0gIm8iKSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLDQpOyBfX3NwbGl0WzJdID09PSAibyIuIEFjdHVhbDogJytfX3NwbGl0WzJdICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A4_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q3IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIHZvaWQgMCwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSAvbC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHZvaWQgMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsgX19zcGxpdC5sZW5ndGggPT09IDMuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdm9pZCAwKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHZvaWQgMCk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAibyIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHZvaWQgMCk7IF9fc3BsaXRbMl0gPT09ICJvIi4gQWN0dWFsOiAnK19fc3BsaXRbMl0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIFwiaGlcIiwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSAvbC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsICJoaSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zcGxpdC5jb25zdHJ1Y3RvciAhPT0gQXJyYXkpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsICJoaSIpOyBfX3NwbGl0LmNvbnN0cnVjdG9yID09PSBBcnJheS4gQWN0dWFsOiAnK19fc3BsaXQuY29uc3RydWN0b3IgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3BsaXQubGVuZ3RoICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygiaGVsbG8iKTsgdmFyIF9fcmUgPSAvbC87IF9fc3BsaXQgPSBfX3N0cmluZy5zcGxpdChfX3JlLCAiaGkiKTsgX19zcGxpdC5sZW5ndGggPT09IDAuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A4_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E0X1Q5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHJlZ2V4cCAvbC8gYW5kIHVuZGVmaW5lZCwgYW5kIGluc3RhbmNlIGlzIFN0cmluZyhcImhlbGxvXCIpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOwoKdmFyIF9fcmUgPSAvbC87Cgp2YXIgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHVuZGVmaW5lZCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3NwbGl0LmNvbnN0cnVjdG9yICE9PSBBcnJheSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsgX19zcGxpdC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkuIEFjdHVhbDogJytfX3NwbGl0LmNvbnN0cnVjdG9yICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3NwbGl0Lmxlbmd0aCAhPT0gMykgewogICRFUlJPUignIzI6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsgX19zcGxpdC5sZW5ndGggPT09IDMuIEFjdHVhbDogJytfX3NwbGl0Lmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19zcGxpdFswXSAhPT0gImhlIikgewogICRFUlJPUignIzM6IHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoImhlbGxvIik7IHZhciBfX3JlID0gL2wvOyBfX3NwbGl0ID0gX19zdHJpbmcuc3BsaXQoX19yZSwgdW5kZWZpbmVkKTsgX19zcGxpdFswXSA9PT0gImhlIi4gQWN0dWFsOiAnK19fc3BsaXRbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19zcGxpdFsxXSAhPT0gIiIpIHsKICAkRVJST1IoJyM0OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHVuZGVmaW5lZCk7IF9fc3BsaXRbMV0gPT09ICIiLiBBY3R1YWw6ICcrX19zcGxpdFsxXSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3NwbGl0WzJdICE9PSAibyIpIHsKICAkRVJST1IoJyM1OiB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJoZWxsbyIpOyB2YXIgX19yZSA9IC9sLzsgX19zcGxpdCA9IF9fc3RyaW5nLnNwbGl0KF9fcmUsIHVuZGVmaW5lZCk7IF9fc3BsaXRbMl0gPT09ICJvIi4gQWN0dWFsOiAnK19fc3BsaXRbMl0gKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A4_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E2IiwKCnBhdGg6ICIxNS41LjQuMTQsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnNwbGl0LnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc3BsaXQucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnNwbGl0LnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.14_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E3IiwKCnBhdGg6ICIxNS41LjQuMTQsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdCBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnNwbGl0OyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9CgogfQp9KTsKCg==","id":"S15.5.4.14_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E4IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnNwbGl0LnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuc3BsaXQucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnNwbGl0KXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5zcGxpdCl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.14_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE0X0E5IiwKCnBhdGg6ICIxNS41LjQuMTQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc3BsaXQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuc3BsaXQubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnNwbGl0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5zcGxpdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc3BsaXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.14_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzE6IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoICE9PSAyKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoID09PSAyLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QodHJ1ZSk7CgpfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zdWJzdHJpbmcoZmFsc2UsIHRydWUpICE9PSAidCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IE9iamVjdCh0cnVlKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKGZhbHNlLCB0cnVlKSA9PT0gInQiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoZmFsc2UsIHRydWUpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3QgYW5kIGZ1bmN0aW9uIGNhbGwsIGFuZCBpbnN0YW5jZSBpcyBTdHJpbmcsIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB2YWx1ZU9mIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAyO319OwoKdmFyIF9fc3RyID0gIlx1MDAzNUFCQkJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAoc3Vic3RyaW5nKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiBzdWJzdHJpbmcoMCwxKTt9KCkpICE9PSAiQkJCIikgewogICAgICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAyO319OyB2YXIgX19zdHIgPSAiXHUwMDM1QUJCQkFCQUIiOyBzdWJzdHJpbmcoX19vYmosIGZ1bmN0aW9uKCl7cmV0dXJuIHN1YnN0cmluZygwLDEpO30oKSkgPT09ICJCQkIiLiBBY3R1YWw6ICcrc3Vic3RyaW5nKF9fb2JqLCBmdW5jdGlvbigpe3JldHVybiBzdWJzdHJpbmcoMCwxKTt9KCkpICk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLCBvYmplY3RzIGhhdmUgb3ZlcnJpZGVkIHZhbHVlT2YgZnVuY3Rpb24sIHRoYXQgcmV0dXJuIGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBzdWJzdHJpbmcoX19vYmosX19vYmoyKTsKICAgICAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3Vic3RyaW5nKF9fb2JqLF9fb2JqMikiIGxlYWQgdG8gdGhyb3cgZXhjZXB0aW9uJyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUhPT0iaW5zdGFydCIpIHsKICAgICAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnN0YXJ0Ii4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5zdGFydCI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CnZhciBfX3N0ciA9IG5ldyBTdHJpbmcoIkFCQlx1MDA0MUJBQkFCIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSBzdWJzdHJpbmcoX19vYmosIF9fb2JqMik7CiAgICAgICRGQUlMKCcjMTogInZhciB4ID0gc3Vic3RyaW5nKF9fb2JqLF9fb2JqMikiIGxlYWQgdG8gdGhyb3cgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09Imluc3RhcnQiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09Imluc3RhcnQiLiBBY3R1YWw6ICcrZSk7CiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBvYmplY3RzLCBhbmQgaW5zdGFuY2UgaXMgc3RyaW5nLiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSwgdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsKdmFyIF9fb2JqMiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICJpbmVuZCI7fX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgICB2YXIgeCA9ICJBQkJcdTAwNDFCQUJBQlx1MDAzMUJCQUEiLnN1YnN0cmluZyhfX29iaiwgX19vYmoyKTsKICAgICRGQUlMKCcjMTogdmFyIHggPSAiQUJCXFx1MDA0MUJBQkFCXFx1MDAzMUJCQUEiLnN1YnN0cmluZyhfX29iaixfX29iajIpIGxlYWQgdG8gdGhyb3cgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICAgIGlmIChlIT09ImluZW5kIikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW5lbmQiLiBBY3R1YWw6ICcrZSk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiVXNlZCBvbmUgYXJndW1lbnQsIHRoYXQgaXMgZnVuY3Rpb24oKXt9KCkuIEluc3RhbmNlIGlzIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoInJlcG9ydCIuc3Vic3RyaW5nKGZ1bmN0aW9uKCl7fSgpKSAhPT0gInJlcG9ydCIpIHsKICAkRVJST1IoJyMxOiAicmVwb3J0Ii5zdWJzdHJpbmcoZnVuY3Rpb24oKXt9KCkpID09PSAicmVwb3J0Ii4gQWN0dWFsOiAnKyJyZXBvcnQiLnN1YnN0cmluZyhmdW5jdGlvbigpe30oKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QxNSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzdWJzdHJpbmcgd2l0aG91dCBhcmd1bWVudHMuIEluc3RhbmNlIGlzIE51bWJlciB3aXRoIHByb3RvdHlwZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbnVtID0gMTEuMDAxMDAyOwoKTnVtYmVyLnByb3RvdHlwZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX251bS5zdWJzdHJpbmcoKSE9PSIxMS4wMDEwMDIiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fbnVtID0gMTEuMDAxMDAyOyBOdW1iZXIucHJvdG90eXBlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyBfX251bS5zdWJzdHJpbmcoKT09PSIxMS4wMDEwMDIiLiBBY3R1YWw6ICcrX19udW0uc3Vic3RyaW5nKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T15"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIGZ1bmN0aW9uIGNhbGwgYW5kIHgsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuLiB4IGlzIHVuZGVmaW5lZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyhmdW5jdGlvbigpe3JldHVybiB0cnVlO30oKSx4KSAhPT0gImFsc2UiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKGZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fSgpLHgpID09PSAiYWxzZSIuIEFjdHVhbDogJytfX2luc3RhbmNlLnN1YnN0cmluZyhmdW5jdGlvbigpe3JldHVybiB0cnVlO30oKSx4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwp2YXIgX190b2dnbGUgPSAxOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoc3Vic3RyaW5nKGV2YWwoIlwiMVwiIikse3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gIjB4MDAwNyJ9fSkhPT0ib2JqZWN0IikgewogICRFUlJPUignIzE6IHN1YnN0cmluZyhldmFsKCJcXCIxXFwiIikse3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gIjB4MDAwNyJ9fSk9PT0ib2JqZWN0Ii4gQWN0dWFsOiAnK3N1YnN0cmluZyhldmFsKCJcIjFcIiIpLHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuICIweDAwMDcifX0pKTsKfTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIGZ1bmN0aW9uIGNhbGwsIHRoYXQgcmV0dXJuZWQgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmdW5jdGlvbigpe3JldHVybiAiZ251bGx1bmEifSgpLnN1YnN0cmluZyhudWxsLCAtMykgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn0oKS5zdWJzdHJpbmcobnVsbCwgLTMpID09PSAiIi4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuc3Vic3RyaW5nKG51bGwsIC0zKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG51bGwgYW5kIEZ1bmN0aW9uKCksIGFuZCBpbnN0YW5jZSBpcyBmdW5jdGlvbiBvYmplY3QsIHRoYXQgaGF2ZSBvdmVycmlkZWQgdmFsdWVPZiBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19mdW5jLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn07CgpGdW5jdGlvbi5wcm90b3R5cGUuc3Vic3RyaW5nPVN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYy5zdWJzdHJpbmcobnVsbCwgRnVuY3Rpb24oKSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19mdW5jLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gImdudWxsdW5hIn07IEZ1bmN0aW9uLnByb3RvdHlwZS5zdWJzdHJpbmc9U3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7IGZ1bmN0aW9uIF9fZnVuYygpe307IF9fZnVuYy5zdWJzdHJpbmcobnVsbCwgRnVuY3Rpb24oKSkgPT09ICIiLiBBY3R1YWw6ICcrX19mdW5jLnN1YnN0cmluZyhudWxsLCBGdW5jdGlvbigpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jKCl7fTsKCiB9Cn0pOwoK","id":"S15.5.4.15_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHggYW5kIG51bWJlciwgYW5kIGluc3RhbmNlIGlzIG5ldyBTdHJpbmcsIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChuZXcgU3RyaW5nKCJ1bmRlZmluZWQiKS5zdWJzdHJpbmcoeCwzKSAhPT0gInVuZCIpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygidW5kZWZpbmVkIikuc3Vic3RyaW5nKHgsMykgPT09ICJ1bmQiLiBBY3R1YWw6ICcrbmV3IFN0cmluZygidW5kZWZpbmVkIikuc3Vic3RyaW5nKHgsMykgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHN5bWJvbCBhbmQgdW5kZWZpbmVkLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcodm9pZCAwKS5zdWJzdHJpbmcoImUiLHVuZGVmaW5lZCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKHZvaWQgMCkuc3Vic3RyaW5nKCJlIix1bmRlZmluZWQpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnK1N0cmluZyh2b2lkIDApLnN1YnN0cmluZygiZSIsdW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIG5lZ2F0aXZlIG51bWJlciBhbmQgdm9pZCAwLCBhbmQgaW5zdGFuY2UgaXMgU3RyaW5nKG9iamVjdCksIG9iamVjdCBoYXZlIG92ZXJyaWRlZCB0b1N0cmluZyBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcoX19vYmopLnN1YnN0cmluZygtNCx2b2lkIDApICE9PSAidW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7fX07IFN0cmluZyhfX29iaikuc3Vic3RyaW5nKC00LHZvaWQgMCkgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICcrU3RyaW5nKF9fb2JqKS5zdWJzdHJpbmcoLTQsdm9pZCAwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgYXJlIHVuZGVmaW5lZCBhbmQgb2JqZWN0LCBhbmQgaW5zdGFuY2UgaXMgbmV3IFN0cmluZyhvYmplY3QpLCBvYmplY3QgaGF2ZSBvdmVycmlkZWQgdmFsdWVPZiBhbmQgdG9TdHJpbmcgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7CiAgICB2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwKICAgIHRvU3RyaW5nOnZvaWQgMAp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAobmV3IFN0cmluZyhfX29iaikuc3Vic3RyaW5nKC8qKGZ1bmN0aW9uKCl7fSkoKSovdW5kZWZpbmVkLHVuZGVmaW5lZCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IG5ldyBTdHJpbmcoX19vYmopLnN1YnN0cmluZygvKihmdW5jdGlvbigpe30pKCkqL3VuZGVmaW5lZCx1bmRlZmluZWQpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnK25ldyBTdHJpbmcoX19vYmopLnN1YnN0cmluZygvKihmdW5jdGlvbigpe30pKCkqL3VuZGVmaW5lZCx1bmRlZmluZWQpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyB0eXBlIG9mIHN1YnN0cmluZygpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fc3RyaW5nLnN1YnN0cmluZygpICE9PSAic3RyaW5nIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgdHlwZW9mIF9fc3RyaW5nLnN1YnN0cmluZygpID09PSAic3RyaW5nIi4gQWN0dWFsOiAnK3R5cGVvZiBfX3N0cmluZy5zdWJzdHJpbmcoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAic3RhcnQgaXMgMCwgZW5kIGlzIDgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXNfaXNfYV9zdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zdWJzdHJpbmcoMCw4KSAhPT0gInRoaXNfaXNfIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpc19pc19hX3N0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKDAsOCkgPT09ICJ0aGlzX2lzXyIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoMCw4KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QyIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBOYU4sIGVuZCBpcyBJbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygndGhpcyBpcyBhIHN0cmluZyBvYmplY3QnKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnN1YnN0cmluZyhOYU4sIEluZmluaXR5KSAhPT0gInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZyhcJ3RoaXMgaXMgYSBzdHJpbmcgb2JqZWN0XCcpOyBfX3N0cmluZy5zdWJzdHJpbmcoTmFOLCBJbmZpbml0eSkgPT09ICJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoTmFOLCBJbmZpbml0eSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1QzIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDYWxsIHN1YnN0cmluZyBmcm9tIGVtcHR5IFN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoIiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKDEsMCkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCIiKTsgX19zdHJpbmcuc3Vic3RyaW5nKDEsMCkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc3Vic3RyaW5nKDEsMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIE5hTiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnN1YnN0cmluZyhJbmZpbml0eSwgTmFOKSAhPT0gInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0IikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pID09PSAidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiLiBBY3R1YWw6ICcrX19zdHJpbmcuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBJbmZpbml0eSwgZW5kIGlzIEluZmluaXR5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKEluZmluaXR5LCBJbmZpbml0eSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOyBfX3N0cmluZy5zdWJzdHJpbmcoSW5maW5pdHksIEluZmluaXR5KSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoSW5maW5pdHksIEluZmluaXR5KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyBuZWdhdGl2ZSBmbG9hdCBudW1iZXIsIGVuZCBpcyAwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKC0wLjAxLDApICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKC0wLjAxLDApID09PSAiIi4gQWN0dWFsOiAnK19fc3RyaW5nLnN1YnN0cmluZygtMC4wMSwwKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCwgZW5kIGlzIHRlc3RlZF9zdHJpbmcubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19zdHJpbmcgPSBuZXcgU3RyaW5nKCJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJpbmcuc3Vic3RyaW5nKF9fc3RyaW5nLmxlbmd0aCwgX19zdHJpbmcubGVuZ3RoKSAhPT0gIiIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnN1YnN0cmluZyhfX3N0cmluZy5sZW5ndGgsIF9fc3RyaW5nLmxlbmd0aCkgPT09ICIiLiBBY3R1YWw6ICcrX19zdHJpbmcuc3Vic3RyaW5nKF9fc3RyaW5nLmxlbmd0aCwgX19zdHJpbmcubGVuZ3RoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A2_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyB0ZXN0ZWRfc3RyaW5nLmxlbmd0aCsxLCBlbmQgaXMgMCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyaW5nLnN1YnN0cmluZyhfX3N0cmluZy5sZW5ndGgrMSwgMCkgIT09ICJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7IF9fc3RyaW5nLnN1YnN0cmluZyhfX3N0cmluZy5sZW5ndGgrMSwgMCkgPT09ICJ0aGlzIGlzIGEgc3RyaW5nIG9iamVjdCIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoX19zdHJpbmcubGVuZ3RoKzEsIDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A2_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EyX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJzdGFydCBpcyAtSW5maW5pdHksIGVuZCBpcyAtSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cmluZyA9IG5ldyBTdHJpbmcoInRoaXMgaXMgYSBzdHJpbmcgb2JqZWN0Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0cmluZy5zdWJzdHJpbmcoLUluZmluaXR5LCAtSW5maW5pdHkpICE9PSAiIikgewogICRFUlJPUignIzE6IF9fc3RyaW5nID0gbmV3IFN0cmluZygidGhpcyBpcyBhIHN0cmluZyBvYmplY3QiKTsgX19zdHJpbmcuc3Vic3RyaW5nKC1JbmZpbml0eSwgLUluZmluaXR5KSA9PT0gIiIuIEFjdHVhbDogJytfX3N0cmluZy5zdWJzdHJpbmcoLUluZmluaXR5LCAtSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A2_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QxIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgSW5maW5pdHksIGVuZCBpcyAtSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEFycmF5KDEsMiwzLDQsNSk7IApfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zdWJzdHJpbmcoSW5maW5pdHksLUluZmluaXR5KSAhPT0gIjEsMiwzLDQsNSIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEFycmF5KDEsMiwzLDQsNSk7IF9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7IF9faW5zdGFuY2Uuc3Vic3RyaW5nKEluZmluaXR5LC1JbmZpbml0eSkgPT09ICIxLDIsMyw0LDUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoSW5maW5pdHksLUluZmluaXR5KSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tuaWcgaWYgYXBwbHlpbmcgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcgdG8gRnVuY3Rpb24gb2JqZWN0IGluc3RhbmNlIHBhc3NlcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19GQUNUT1JZLnByb3RvdHlwZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSh2b2lkIDApOwogCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc3Vic3RyaW5nKDAsIDEwMCkgIT09ICJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZS5zdWJzdHJpbmcoMCwgMTAwKSA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogJytfX2luc3RhbmNlLnN1YnN0cmluZygwLCAxMDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX0ZBQ1RPUlkoIHZhbHVlICkgewogICAgdGhpcy52YWx1ZSA9IHZhbHVlOwogICAgdGhpcy50b1N0cmluZyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gdGhpcy52YWx1ZSsnJzsgfQp9CgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE1IiwKCmRlc2NyaXB0aW9uOiAiQXBwbHkgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcgdG8gQm9vbGVhbiBpbnN0YW5jZS4gU3RhcnQgaXMgbmV3IEFycmF5KCksIGVuZCBpcyBuZXcgQm9vbGVhbigxKSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbigpOwogCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyhuZXcgQXJyYXkoKSwgbmV3IEJvb2xlYW4oMSkpICE9PSAiZiIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW4oKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKG5ldyBBcnJheSgpLCBuZXcgQm9vbGVhbigxKSkgPT09ICJmIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKG5ldyBBcnJheSgpLCBuZXcgQm9vbGVhbigxKSkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A3_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QyIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgOSwgZW5kIGlzIC1JbmZpbml0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyg5LC1JbmZpbml0eSkgIT09ICIxLDIsMyw0LDUiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyBfX2luc3RhbmNlLnN1YnN0cmluZyg5LC1JbmZpbml0eSkgPT09ICIxLDIsMyw0LDUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoOSwtSW5maW5pdHkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1QzIiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgdHJ1ZSwgZW5kIGlzIGZhbHNlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyAKX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc3Vic3RyaW5nKHRydWUsIGZhbHNlKSAhPT0gIjEiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBBcnJheSgxLDIsMyw0LDUpOyBfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyBfX2luc3RhbmNlLnN1YnN0cmluZyh0cnVlLCBmYWxzZSkgPT09ICIxIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKHRydWUsIGZhbHNlKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBBcnJheSBpbnN0YW5jZS4gU3RhcnQgaXMgXCc0XCcsIGVuZCBpcyBcJzVcJyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZygnNCcsICc1JykgIT09ICIzIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoMSwyLDMsNCw1KTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgX19pbnN0YW5jZS5zdWJzdHJpbmcoXCc0XCcsIFwnNVwnKSA9PT0gIjMiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoJzQnLCAnNScpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBPYmplY3QgaW5zdGFuY2UuIFN0YXJ0IGlzIDgsIGVuZCBpcyAwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyg4LDApICE9PSAiW29iamVjdCAiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgX19pbnN0YW5jZS5zdWJzdHJpbmcoOCwwKSA9PT0gIltvYmplY3QgIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKDgsMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A3_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBPYmplY3QgaW5zdGFuY2UuIFN0YXJ0IGlzIDgsIGVuZCBpcyBsZW5ndGggb2Ygb2JqZWN0LnRvU3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZyg4LCBfX2luc3RhbmNlLnRvU3RyaW5nKCkubGVuZ3RoKSAhPT0gIk9iamVjdF0iKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgX19pbnN0YW5jZS5zdWJzdHJpbmcoOCwgX19pbnN0YW5jZS50b1N0cmluZygpLmxlbmd0aCkgPT09ICJPYmplY3RdIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKDgsIF9faW5zdGFuY2UudG9TdHJpbmcoKS5sZW5ndGgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBPYmplY3QgaW5zdGFuY2UuIENhbGwgaW5zdGFuY2Uuc3Vic3RyaW5nKC4uLikuc3Vic3RyaW5nKC4uLikiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OwogCl9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnN1YnN0cmluZygtSW5maW5pdHksOCkgIT09ICJmdW5jdGlvbiIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gZnVuY3Rpb24oKXt9OyBfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyAgX19pbnN0YW5jZS5zdWJzdHJpbmcoLUluZmluaXR5LDgpID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5zdWJzdHJpbmcoOCxJbmZpbml0eSkuc3Vic3RyaW5nKC1JbmZpbml0eSwxKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.15_A3_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBOdW1iZXIgaW5zdGFuY2UuIFN0YXJ0IGlzIEluZmluaXR5LCBlbmQgaXMgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsKIApfX2luc3RhbmNlLnN1YnN0cmluZyA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5zdWJzdHJpbmcoSW5maW5pdHksIE5hTikgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBOdW1iZXIoTmFOKTsgX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsgIF9faW5zdGFuY2Uuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pID09PSAiTmFOIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKEluZmluaXR5LCBOYU4pICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A3_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0EzX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJBcHBseSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyB0byBNYXRoIGluc3RhbmNlLiBTdGFydCBpcyBNYXRoLlBJLCBlbmQgaXMgLTEwIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IE1hdGg7CiAKX19pbnN0YW5jZS5zdWJzdHJpbmcgPSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2Uuc3Vic3RyaW5nKE1hdGguUEksIC0xMCkgIT09ICJbb2IiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IE1hdGg7IF9faW5zdGFuY2Uuc3Vic3RyaW5nID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7ICBfX2luc3RhbmNlLnN1YnN0cmluZyhNYXRoLlBJLCAtMTApID09PSAiW29iIi4gQWN0dWFsOiAnK19faW5zdGFuY2Uuc3Vic3RyaW5nKE1hdGguUEksIC0xMCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A3_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E2IiwKCnBhdGg6ICIxNS41LjQuMTUsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5wcm90b3R5cGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5wcm90b3R5cGUgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E3IiwKCnBhdGg6ICIxNS41LjQuMTUsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcgb2JqZWN0IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmc7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IHVuZGVmaW5lZCA9IDEgdGhyb3cgYSBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7ICAKICB9CiAgJFBSSU5UKGUpOwp9CgogfQp9KTsKCg==","id":"S15.5.4.15_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E4IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAodmFyIHAgaW4gU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcpewogIGlmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7Cn0KCmlmIChjb3VudCAhPT0gMCkgewogICRFUlJPUignIzI6IGNvdW50PTA7IGZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZyl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9IGNvdW50ID09PSAwLiBBY3R1YWw6ICcrY291bnQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.15_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE1X0E5IiwKCnBhdGg6ICIxNS41LjQuMTUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5zdWJzdHJpbmcubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnN1YnN0cmluZy5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuc3Vic3RyaW5nLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.15_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG93ZXJDYXNlKCkgIT09ICJ0cnVlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb3dlckNhc2UoKSA9PT0gInRydWUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvd2VyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319Cl9fb2JqLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b0xvd2VyQ2FzZSgpICE9PSJhYiIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319OyBfX29iai50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IF9fb2JqLnRvTG93ZXJDYXNlKCkgPT09ImFiIi4gQWN0dWFsOiAnK19fb2JqLnRvTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9Mb3dlckNhc2UoKTsKICAgCSRGQUlMKCcjMTogInZhciB4ID0gX19vYmoudG9Mb3dlckNhc2UoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKICB2YXIgeCA9IF9fb2JqLnRvTG93ZXJDYXNlKCk7CiAJJEZBSUwoJyMxOiAidmFyIHggPSBfX29iai50b0xvd2VyQ2FzZSgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9Mb3dlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b0xvd2VyQ2FzZSgpICE9PSIxIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsgX19vYmoudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOyBfX29iai50b0xvd2VyQ2FzZSgpID09PSIxIi4gQWN0dWFsOiAnK19fb2JqLnRvTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnRvTG93ZXJDYXNlKCkubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IF9fb2JqLnRvTG93ZXJDYXNlKCkubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19vYmoudG9Mb3dlckNhc2UoKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE2IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvd2VyQ2FzZSgpIGZ1bmN0aW9uIGZvciBSZWdFeHAgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJBQkMiKTsKX19yZWcudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19yZWcudG9Mb3dlckNhc2UoKSAhPT0gIi9hYmMvIikgewogICRFUlJPUignIzE6IHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIkFCQyIpOyBfX3JlZy50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IF9fcmVnLnRvTG93ZXJDYXNlKCkgPT09ICIvYWJjLyIuIEFjdHVhbDogJytfX3JlZy50b0xvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG93ZXJDYXNlKCkgIT09ICJmYWxzZSIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOyAgX19pbnN0YW5jZS50b0xvd2VyQ2FzZSgpID09PSAiZmFsc2UiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcIkJKXCIiKS50b0xvd2VyQ2FzZSgpICE9PSAiYmoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiQkpcXCIiKS50b0xvd2VyQ2FzZSgpID09PSAiYmoiLiBBY3R1YWw6ICcrZXZhbCgiXCJCSlwiIikudG9Mb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsKCnZhciBfX2V4cGVjdGVkID0gIiI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fbG93ZXJDYXNlID0gIiIudG9Mb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2xvd2VyQ2FzZVswXSE9PV9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyM0OiBfX2xvd2VyQ2FzZSA9ICIiLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSAiIjsgX19sb3dlckNhc2VbMF09PT0nK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIGZ1bmN0aW9uIGNhbGwiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIG1hdGNoKG51bGwpIGV2YWx1YXRlcyB0byBtYXRjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG93ZXJDYXNlKCkgIT09ICJnbnVsbHVuYSIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG93ZXJDYXNlKCkgPT09ICJnbnVsbHVuYSIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG93ZXJDYXNlKCkgIT09ICItaW5maW5pdHkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG93ZXJDYXNlKCkgPT09ICItaW5maW5pdHkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9Mb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgogfQp9KTsKCg==","id":"S15.5.4.16_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b0xvd2VyQ2FzZSgpIT09ICJuYW4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2U7IE5hTi50b0xvd2VyQ2FzZSgpPT09ICJuYW4iLiBBY3R1YWw6ICcrTmFOLnRvTG93ZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvTG93ZXJDYXNlKCkhPT0gImluZmluaXR5IikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9Mb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOyBJbmZpbml0eS50b0xvd2VyQ2FzZSgpPT09ICJpbmZpbml0eSIuIEFjdHVhbDogJytJbmZpbml0eS50b0xvd2VyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7Cgp2YXIgX19leHBlY3RlZCA9InVuZGVmaW5lZCI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19sb3dlckNhc2VbaW5kZXhdIT09X19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzQuJytpbmRleCsnOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2VbJytpbmRleCsnXT09PScrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b0xvd2VyQ2FzZSgpICE9PSAiaGVsbG8sIHdvcmxkISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9Mb3dlckNhc2UoKSA9PT0gImhlbGxvLCB3b3JsZCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgIT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgPT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgPT09bmV3IFN0cmluZygiaGVsbG8sIHdvcmxkISIpKSB7CiAgJEVSUk9SKCcjMzogIkhlbGxvLCBXb1JsRCEiLnRvTG93ZXJDYXNlKCkgIT09IG5ldyBTdHJpbmcoImhlbGxvLCB3b3JsZCEiKScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E2IiwKCnBhdGg6ICIxNS41LjQuMTYsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.16_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E3IiwKCnBhdGg6ICIxNS41LjQuMTYsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4xOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiB0aHJvd3MgYSBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7ICAKICB9Cn07CgoKIH0KfSk7Cgo=","id":"S15.5.4.16_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E4IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.16_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE2X0E5IiwKCnBhdGg6ICIxNS41LjQuMTYiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvTG93ZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9Mb3dlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.16_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCAhPT0gX19vYmopIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCA9PT0gX19vYmouIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ICJ0cnVlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0gInRydWUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvY2FsZUxvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZUxvd2VyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319Cl9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ImFiIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxQiI7fX07IF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0iYWIiLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKTsKICAgCSRGQUlMKCcjMTogInZhciB4ID0gX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKICB2YXIgeCA9IF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCk7CiAJJEZBSUwoJyMxOiAidmFyIHggPSBfX29iai50b0xvY2FsZUxvd2VyQ2FzZSgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9Mb2NhbGVMb3dlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSIxIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsgX19vYmoudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOyBfX29iai50b0xvY2FsZUxvd2VyQ2FzZSgpID09PSIxIi4gQWN0dWFsOiAnK19fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IF9fb2JqLnRvTG9jYWxlTG93ZXJDYXNlKCkubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVMb3dlckNhc2UoKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE3IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZUxvd2VyQ2FzZSgpIGZ1bmN0aW9uIGZvciBSZWdFeHAgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJBQkMiKTsKX19yZWcudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19yZWcudG9Mb2NhbGVMb3dlckNhc2UoKSAhPT0gIi9hYmMvIikgewogICRFUlJPUignIzE6IHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoIkFCQyIpOyBfX3JlZy50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IF9fcmVnLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09ICIvYWJjLyIuIEFjdHVhbDogJytfX3JlZy50b0xvY2FsZUxvd2VyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSAiZmFsc2UiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0gImZhbHNlIi4gQWN0dWFsOiAnK19faW5zdGFuY2UudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcIkJKXCIiKS50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSAiYmoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiQkpcXCIiKS50b0xvY2FsZUxvd2VyQ2FzZSgpID09PSAiYmoiLiBBY3R1YWw6ICcrZXZhbCgiXCJCSlwiIikudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsKCnZhciBfX2V4cGVjdGVkID0gIiI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2xvd2VyQ2FzZVswXSE9PV9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyM0OiBfX2xvd2VyQ2FzZSA9ICIiLnRvTG9jYWxlTG93ZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSAiIjsgX19sb3dlckNhc2VbMF09PT1fX2V4cGVjdGVkWzBdLiBBY3R1YWw6ICcrX19sb3dlckNhc2VbMF0pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gZm9yIGZ1bmN0aW9uIGNhbGwiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIG1hdGNoKG51bGwpIGV2YWx1YXRlcyB0byBtYXRjaCgibnVsbCIpCmlmIChmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ICJnbnVsbHVuYSIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09ICJnbnVsbHVuYSIuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAiR251bEx1TmEifSgpLnRvTG9jYWxlTG93ZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09ICItaW5maW5pdHkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09ICItaW5maW5pdHkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9Mb2NhbGVMb3dlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b0xvY2FsZUxvd2VyQ2FzZSgpIT09ICJuYW4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2U7IE5hTi50b0xvY2FsZUxvd2VyQ2FzZSgpPT09ICJuYW4iLiBBY3R1YWw6ICcrTmFOLnRvTG9jYWxlTG93ZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvTG9jYWxlTG93ZXJDYXNlKCkhPT0gImluZmluaXR5IikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOyBJbmZpbml0eS50b0xvY2FsZUxvd2VyQ2FzZSgpPT09ICJpbmZpbml0eSIuIEFjdHVhbDogJytJbmZpbml0eS50b0xvY2FsZUxvd2VyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.17_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlTG93ZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlTG93ZXJDYXNlKCk7CgoKdmFyIF9fZXhwZWN0ZWQgPSJ1bmRlZmluZWQiOyAKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fbG93ZXJDYXNlLmxlbmd0aCAhPT0gX19leHBlY3RlZC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZUxvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2UubGVuZ3RoID09PSBfX2V4cGVjdGVkLmxlbmd0aC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19sb3dlckNhc2UuaW5kZXggIT09IF9fZXhwZWN0ZWQuaW5kZXgpIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZUxvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2UuaW5kZXggPT09IF9fZXhwZWN0ZWQuaW5kZXguIEFjdHVhbDogJytfX2xvd2VyQ2FzZS5pbmRleCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19sb3dlckNhc2UuaW5wdXQgIT09IF9fZXhwZWN0ZWQuaW5wdXQpIHsKICAkRVJST1IoJyMzOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZUxvd2VyQ2FzZSgpOyBfX2V4cGVjdGVkID0idW5kZWZpbmVkIjsgX19sb3dlckNhc2UuaW5wdXQgPT09IF9fZXhwZWN0ZWQuaW5wdXQuIEFjdHVhbDogJytfX2xvd2VyQ2FzZS5pbnB1dCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNApmb3IodmFyIGluZGV4PTA7IGluZGV4PF9fZXhwZWN0ZWQubGVuZ3RoOyBpbmRleCsrKSB7CiAgaWYgKF9fbG93ZXJDYXNlW2luZGV4XSE9PV9fZXhwZWN0ZWRbaW5kZXhdKSB7CiAgICAkRVJST1IoJyM0LicraW5kZXgrJzogX19vYmogPSB7dmFsdWVPZjpmdW5jdGlvbigpe30sIHRvU3RyaW5nOnZvaWQgMH07IF9fbG93ZXJDYXNlID0gbmV3IFN0cmluZyhfX29iaikudG9Mb2NhbGVMb3dlckNhc2UoKTsgX19leHBlY3RlZCA9InVuZGVmaW5lZCI7IF9fbG93ZXJDYXNlWycraW5kZXgrJ109PT0gJytfX2V4cGVjdGVkW2luZGV4XSsnLiBBY3R1YWw6ICcrX19sb3dlckNhc2VbaW5kZXhdKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.17_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSAiaGVsbG8sIHdvcmxkISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0gImhlbGxvLCB3b3JsZCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlTG93ZXJDYXNlKCkgIT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09IFN0cmluZygiaGVsbG8sIHdvcmxkISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09IG5ldyBTdHJpbmcoImhlbGxvLCB3b3JsZCEiKSkgewogICRFUlJPUignIzM6ICJIZWxsbywgV29SbEQhIi50b0xvY2FsZUxvd2VyQ2FzZSgpICE9PSBuZXcgU3RyaW5nKCJoZWxsbywgd29ybGQhIiknKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E2IiwKCnBhdGg6ICIxNS41LjQuMTcsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E3IiwKCnBhdGg6ICIxNS41LjQuMTcsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4xOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZTsgInZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSIgdGhyb3cgYSBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7ICAKICB9CiAgJFBSSU5UKGUpOwp9CgogfQp9KTsKCg==","id":"S15.5.4.17_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E4IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAodmFyIHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2Upe2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.17_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE3X0E5IiwKCnBhdGg6ICIxNS41LjQuMTciLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlTG93ZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZUxvd2VyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVMb3dlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.17_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvVXBwZXJDYXNlKCkgIT09ICJUUlVFIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9VcHBlckNhc2UoKSA9PT0gIlRSVUUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b1VwcGVyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.18_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b1VwcGVyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MWIiO319Cl9fb2JqLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvVXBwZXJDYXNlKCkgIT09IkFCIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxYiI7fX07IF9fb2JqLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgX19vYmoudG9VcHBlckNhc2UoKSA9PT0iQUIiLiBBY3R1YWw6ICcrX19vYmoudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX29iai50b1VwcGVyQ2FzZSgpOwogICAJJEZBSUwoJyMxOiAidmFyIHggPSBfX29iai50b1VwcGVyQ2FzZSgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.18_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9VcHBlckNhc2UoKTsKIAkkRkFJTCgnIzE6ICJ2YXIgeCA9IF9fb2JqLnRvVXBwZXJDYXNlKCkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9VcHBlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai50b1VwcGVyQ2FzZSgpICE9PSIxIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fTsgX19vYmoudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOyBfX29iai50b1VwcGVyQ2FzZSgpID09PSIxIi4gQWN0dWFsOiAnK19fb2JqLnRvVXBwZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnRvVXBwZXJDYXNlKCkubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7IF9fb2JqLnRvVXBwZXJDYXNlKCkubGVuZ3RoID09PSAxLiBBY3R1YWw6ICcrX19vYmoudG9VcHBlckNhc2UoKS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE4IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b1VwcGVyQ2FzZSgpIGZ1bmN0aW9uIG9mIFJlZ0V4cCBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3JlZyA9IG5ldyBSZWdFeHAoImFiYyIpOwpfX3JlZy50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fcmVnLnRvVXBwZXJDYXNlKCkgIT09ICIvQUJDLyIpIHsKICAkRVJST1IoJyMxOiB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJhYmMiKTsgX19yZWcudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOyBfX3JlZy50b1VwcGVyQ2FzZSgpID09PSAiL0FCQy8iLiBBY3R1YWw6ICcrX19yZWcudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS50b1VwcGVyQ2FzZSgpICE9PSAiRkFMU0UiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9VcHBlckNhc2UoKSA9PT0gIkZBTFNFIi4gQWN0dWFsOiAnK19faW5zdGFuY2UudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcImJqXCIiKS50b1VwcGVyQ2FzZSgpICE9PSAiQkoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiYmpcXCIiKS50b1VwcGVyQ2FzZSgpID09PSAiQkoiLiBBY3R1YWw6ICcrZXZhbCgiXCJialwiIikudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsKCnZhciBfX2V4cGVjdGVkID0gIiI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fbG93ZXJDYXNlID0gIiIudG9VcHBlckNhc2UoKTsgX19leHBlY3RlZCA9ICIiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2xvd2VyQ2FzZVswXSE9PV9fZXhwZWN0ZWRbMF0pIHsKICAkRVJST1IoJyM0OiBfX2xvd2VyQ2FzZSA9ICIiLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSAiIjsgX19sb3dlckNhc2VbMF09PT0nK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgZnVuY3Rpb24gY2FsbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKG51bGwpIGV2YWx1YXRlcyB0byAibnVsbCIgbWF0Y2gobnVsbCkgZXZhbHVhdGVzIHRvIG1hdGNoKCJudWxsIikKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9VcHBlckNhc2UoKSAhPT0gIkdOVUxMVU5BIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9VcHBlckNhc2UoKSA9PT0gIkdOVUxMVU5BIi4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvVXBwZXJDYXNlKCkgIT09ICItSU5GSU5JVFkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvVXBwZXJDYXNlKCkgPT09ICItSU5GSU5JVFkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9VcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b1VwcGVyQ2FzZSgpIT09ICJOQU4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b1VwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2U7IE5hTi50b1VwcGVyQ2FzZSgpPT09ICJOQU4iLiBBY3R1YWw6ICcrTmFOLnRvVXBwZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvVXBwZXJDYXNlKCkhPT0gIklORklOSVRZIikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9VcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOyBJbmZpbml0eS50b1VwcGVyQ2FzZSgpPT09ICJJTkZJTklUWSIuIEFjdHVhbDogJytJbmZpbml0eS50b1VwcGVyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7Cgp2YXIgX19leHBlY3RlZCA9IlVOREVGSU5FRCI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX191cHBlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX3VwcGVyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX191cHBlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3VwcGVyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX3VwcGVyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fdXBwZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3VwcGVyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX3VwcGVyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX3VwcGVyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fdXBwZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX191cHBlckNhc2VbaW5kZXhdIT09X19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzQuJytpbmRleCsnOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX191cHBlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b1VwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0iVU5ERUZJTkVEIjsgX191cHBlckNhc2VbJytpbmRleCsnXT09PScrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fdXBwZXJDYXNlW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b1VwcGVyQ2FzZSgpICE9PSAiSEVMTE8sIFdPUkxEISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9VcHBlckNhc2UoKSA9PT0gIkhFTExPLCBXT1JMRCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b1VwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgIT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgPT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b1VwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgPT09bmV3IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMzogIkhlbGxvLCBXb1JsRCEiLnRvVXBwZXJDYXNlKCkgIT09IG5ldyBTdHJpbmcoIkhFTExPLCBXT1JMRCEiKScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E2IiwKCnBhdGg6ICIxNS41LjQuMTgsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.18_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E3IiwKCnBhdGg6ICIxNS41LjQuMTgsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4xOiB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZTsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiB0aHJvdyBhIFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KfQoKIH0KfSk7Cgo=","id":"S15.5.4.18_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E4IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlKXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.18_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE4X0E5IiwKCnBhdGg6ICIxNS41LjQuMTgiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b1VwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9VcHBlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.18_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExMCIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMxOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggIT09IF9fb2JqKSB7CiAgJEVSUk9SKCcjMjogX19vYmogPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggPT09IF9fb2JqLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExMSIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aCAhPT0gMCkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UubGVuZ3RoID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJBcmd1bWVudHMgaXMgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09ICJUUlVFIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIlRSVUUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS50b0xvY2FsZVVwcGVyQ2FzZSgpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.19_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMCIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZVVwcGVyQ2FzZSgpIGZ1bmN0aW9uIG9mIG9iamVjdCB3aXRoIG92ZXJyb2RlIHRvU3RyaW5nIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MWIiO319Cl9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IkFCIikgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxYiI7fX07IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0iQUIiLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMSIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24sIHRvU3RyaW5nIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX0KX19vYmoudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX29iai50b0xvY2FsZVVwcGVyQ2FzZSgpOwogICRGQUlMKCcjMTogInZhciB4ID0gX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9zdHIiLiBBY3R1YWw6ICcrZSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMiIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiwgdGhlbiBjYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gZm9yIHRoaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319Cl9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKTsKIAkkRkFJTCgnIzE6ICJ2YXIgeCA9IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxMyIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB0aGVuIGNhbGwgdG9Mb2NhbGVVcHBlckNhc2UoKSBmdW5jdGlvbiBmb3IgdGhpcyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiB7fTt9LHZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQpfX29iai50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IjEiKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAxO319OyBfX29iai50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09IjEiLiBBY3R1YWw6ICcrX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKS5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07IF9fb2JqLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgX19vYmoudG9Mb2NhbGVVcHBlckNhc2UoKS5sZW5ndGggPT09IDEuIEFjdHVhbDogJytfX29iai50b0xvY2FsZVVwcGVyQ2FzZSgpLmxlbmd0aCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QxNCIsCgpwYXRoOiAiMTUuNS40LjE5IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCB0b0xvY2FsZVVwcGVyQ2FzZSgpIGZ1bmN0aW9uIGZvciBSZWdFeHAgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19yZWcgPSBuZXcgUmVnRXhwKCJhYmMiKTsKX19yZWcudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3JlZy50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiL0FCQy8iKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fcmVnID0gbmV3IFJlZ0V4cCgiYWJjIik7IF9fcmVnLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgX19yZWcudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIi9BQkMvIi4gQWN0dWFsOiAnK19fcmVnLnRvTG9jYWxlVXBwZXJDYXNlKCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QyIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJJbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiRkFMU0UiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsgIF9faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIkZBTFNFIi4gQWN0dWFsOiAnK19faW5zdGFuY2UudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1QzIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChldmFsKCJcImJqXCIiKS50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiQkoiKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiXFwiYmpcXCIiKS50b0xvY2FsZVVwcGVyQ2FzZSgpID09PSAiQkoiLiBBY3R1YWw6ICcrZXZhbCgiXCJialwiIikudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q0IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudHMgb2Ygc3RyaW5nIGFuZCBmcm9tIGVtcHR5IHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVVcHBlckNhc2UoKTsKdmFyIF9fZXhwZWN0ZWQgPSAiIjsgCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2xvd2VyQ2FzZS5sZW5ndGggIT09IF9fZXhwZWN0ZWQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogX19sb3dlckNhc2UgPSAiIi50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0gIiI7IF9fbG93ZXJDYXNlLmxlbmd0aCA9PT0gX19leHBlY3RlZC5sZW5ndGguIEFjdHVhbDogJytfX2xvd2VyQ2FzZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbG93ZXJDYXNlLmluZGV4ICE9PSBfX2V4cGVjdGVkLmluZGV4KSB7CiAgJEVSUk9SKCcjMjogX19sb3dlckNhc2UgPSAiIi50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0gIiI7IF9fbG93ZXJDYXNlLmluZGV4ID09PSBfX2V4cGVjdGVkLmluZGV4LiBBY3R1YWw6ICcrX19sb3dlckNhc2UuaW5kZXggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fbG93ZXJDYXNlLmlucHV0ICE9PSBfX2V4cGVjdGVkLmlucHV0KSB7CiAgJEVSUk9SKCcjMzogX19sb3dlckNhc2UgPSAiIi50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0gIiI7IF9fbG93ZXJDYXNlLmlucHV0ID09PSBfX2V4cGVjdGVkLmlucHV0LiBBY3R1YWw6ICcrX19sb3dlckNhc2UuaW5wdXQgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fbG93ZXJDYXNlWzBdIT09X19leHBlY3RlZFswXSkgewogICRFUlJPUignIzQ6IF9fbG93ZXJDYXNlID0gIiIudG9Mb2NhbGVVcHBlckNhc2UoKTsgX19sb3dlckNhc2VbMF09PT0nK19fZXhwZWN0ZWRbMF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlWzBdKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q1IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgZnVuY3Rpb24gY2FsbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKG51bGwpIGV2YWx1YXRlcyB0byAibnVsbCIgbWF0Y2gobnVsbCkgZXZhbHVhdGVzIHRvIG1hdGNoKCJudWxsIikKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9Mb2NhbGVVcHBlckNhc2UoKSAhPT0gIkdOVUxMVU5BIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIkdOVUxMVU5BIi4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJHbnVsTHVOYSJ9KCkudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q2IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09ICItSU5GSU5JVFkiKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7IChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09ICItSU5GSU5JVFkiLiBBY3R1YWw6ICcrKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkudG9Mb2NhbGVVcHBlckNhc2UoKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.19_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q3IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgTmFOIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlID0gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKE5hTi50b0xvY2FsZVVwcGVyQ2FzZSgpIT09ICJOQU4iKSB7CiAgJEVSUk9SKCcjMTogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSA9IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2U7IE5hTi50b0xvY2FsZVVwcGVyQ2FzZSgpPT09ICJOQU4iLiBBY3R1YWw6ICcrTmFOLnRvTG9jYWxlVXBwZXJDYXNlKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q4IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2YgSW5maW5pdHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwoKaWYgKEluZmluaXR5LnRvTG9jYWxlVXBwZXJDYXNlKCkhPT0gIklORklOSVRZIikgewogICRFUlJPUignIzE6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOyBJbmZpbml0eS50b0xvY2FsZVVwcGVyQ2FzZSgpPT09ICJJTkZJTklUWSIuIEFjdHVhbDogJytJbmZpbml0eS50b0xvY2FsZVVwcGVyQ2FzZSgpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0ExX1Q5IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDYWxsIHRvTG9jYWxlVXBwZXJDYXNlKCkgZnVuY3Rpb24gb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCnZhciBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7Cgp2YXIgX19leHBlY3RlZCA9IlVOREVGSU5FRCI7IAoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19sb3dlckNhc2UubGVuZ3RoICE9PSBfX2V4cGVjdGVkLmxlbmd0aCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX2xvd2VyQ2FzZS5sZW5ndGggPT09IF9fZXhwZWN0ZWQubGVuZ3RoLiBBY3R1YWw6ICcrX19sb3dlckNhc2UubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2xvd2VyQ2FzZS5pbmRleCAhPT0gX19leHBlY3RlZC5pbmRleCkgewogICRFUlJPUignIzI6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX2xvd2VyQ2FzZS5pbmRleCA9PT0gX19leHBlY3RlZC5pbmRleC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmluZGV4ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2xvd2VyQ2FzZS5pbnB1dCAhPT0gX19leHBlY3RlZC5pbnB1dCkgewogICRFUlJPUignIzM6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBfX2xvd2VyQ2FzZSA9IG5ldyBTdHJpbmcoX19vYmopLnRvTG9jYWxlVXBwZXJDYXNlKCk7IF9fZXhwZWN0ZWQgPSJVTkRFRklORUQiOyBfX2xvd2VyQ2FzZS5pbnB1dCA9PT0gX19leHBlY3RlZC5pbnB1dC4gQWN0dWFsOiAnK19fbG93ZXJDYXNlLmlucHV0ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmZvcih2YXIgaW5kZXg9MDsgaW5kZXg8X19leHBlY3RlZC5sZW5ndGg7IGluZGV4KyspIHsKICBpZiAoX19sb3dlckNhc2VbaW5kZXhdIT09X19leHBlY3RlZFtpbmRleF0pIHsKICAgICRFUlJPUignIzQuJytpbmRleCsnOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgX19sb3dlckNhc2UgPSBuZXcgU3RyaW5nKF9fb2JqKS50b0xvY2FsZVVwcGVyQ2FzZSgpOyBfX2V4cGVjdGVkID0iVU5ERUZJTkVEIjsgX19sb3dlckNhc2VbJytpbmRleCsnXT09PScrX19leHBlY3RlZFtpbmRleF0rJy4gQWN0dWFsOiAnK19fbG93ZXJDYXNlW2luZGV4XSk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0EyX1QxIiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyByZXR1cm5lZCByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZVVwcGVyQ2FzZSgpICE9PSAiSEVMTE8sIFdPUkxEISIpIHsKICAkRVJST1IoJyMxOiAiSGVsbG8sIFdvUmxEISIudG9Mb2NhbGVVcHBlckNhc2UoKSA9PT0gIkhFTExPLCBXT1JMRCEiLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZVVwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMjogIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09IFN0cmluZygiSEVMTE8sIFdPUkxEISIpLiBBY3R1YWw6ICcrKCJIZWxsbywgV29SbEQhIi50b0xvY2FsZVVwcGVyQ2FzZSgpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgPT09bmV3IFN0cmluZygiSEVMTE8sIFdPUkxEISIpKSB7CiAgJEVSUk9SKCcjMzogIkhlbGxvLCBXb1JsRCEiLnRvTG9jYWxlVXBwZXJDYXNlKCkgIT09IG5ldyBTdHJpbmcoIkhFTExPLCBXT1JMRCEiJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.19_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E2IiwKCnBhdGg6ICIxNS41LjQuMTksIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E3IiwKCnBhdGg6ICIxNS41LjQuMTksIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlOyAiX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjE6ICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7ICBPYmplY3QgaGFzIG5vIGNvbnN0cnVjdCBsZWFkICBhIFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KfQoKIH0KfSk7Cgo=","id":"S15.5.4.19_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E4IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAodmFyIHAgaW4gU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2Upe2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.19_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjE5X0E5IiwKCnBhdGg6ICIxNS41LjQuMTkiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLnRvTG9jYWxlVXBwZXJDYXNlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS50b0xvY2FsZVVwcGVyQ2FzZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUudG9Mb2NhbGVVcHBlckNhc2UuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.19_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTEuMSIsCgpwYXRoOiAiMTUuNS40LjQsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt0aGlzLnRvU3RyaW5nID0gZnVuY3Rpb24oKXsgcmV0dXJuICJ3aXphcmQiO307fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CgpfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICBpZiAoX19pbnN0YW5jZS5jaGFyQXQoZXZhbCgiMSIpLHRydWUsbnVsbCx7fSkhPT0gImkiKSB7CiAgICAkRVJST1IoJyMxOiBfX2luc3RhbmNlLmNoYXJBdChldmFsKCIxIiksdHJ1ZSxudWxsLHt9KT09PSAiaSIuIEFjdHVhbDogJytfX2luc3RhbmNlLmNoYXJBdChldmFsKCIxIiksdHJ1ZSxudWxsLHt9KSk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.4_A1.1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTEwIiwKCnBhdGg6ICIxNS41LjQuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTExIiwKCnBhdGg6ICIxNS41LjQuNCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoNDIpOwoKX19pbnN0YW5jZS5jaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UuY2hhckF0KGZhbHNlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKSAhPT0gIjQyIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsgX19pbnN0YW5jZS5jaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsgX19pbnN0YW5jZS5jaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgX19pbnN0YW5jZS5jaGFyQXQoZmFsc2UpK19faW5zdGFuY2UuY2hhckF0KHRydWUpID09PSAiNDIiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5jaGFyQXQoZmFsc2UpK19faW5zdGFuY2UuY2hhckF0KHRydWUpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNCIsCgpkZXNjcmlwdGlvbjogIkNhbGwgY2hhckF0KCkgZnVuY3Rpb24gd2l0aCBvYmplY3QgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAxO319CnZhciBfX3N0ciA9ICJsZWdvIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgaWYgKGNoYXJBdChfX29iaikgIT09ICJlIikgewogICAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07IHZhciBfX3N0ciA9ICJsZWdvIjsgY2hhckF0KF9fb2JqKSA9PT0gImUiLiBBY3R1YWw6IGNoYXJBdChfX29iaikgPT09JytjaGFyQXQoX19vYmopICk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGVxdWF0aW9uIHdpdGggZmFsc2UgYW5kIHRydWUsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmNoYXJBdChmYWxzZSkrX19pbnN0YW5jZS5jaGFyQXQodHJ1ZSkrX19pbnN0YW5jZS5jaGFyQXQodHJ1ZSsxKSAhPT0gImZhbCIpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7ICBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7IF9faW5zdGFuY2UuY2hhckF0KGZhbHNlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKzEpID09PSAiZmFsIi4gQWN0dWFsOiAnK19faW5zdGFuY2UuY2hhckF0KGZhbHNlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKStfX2luc3RhbmNlLmNoYXJBdCh0cnVlKzEpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiVXNlIG51bWJlcnMgYW5kIHN0cmluZ3MgYXMgcG9zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB2YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGNoYXJBdCgiMSIpICsgY2hhckF0KDIpICsgY2hhckF0KCIzIikgKyBjaGFyQXQoNCkgKyBjaGFyQXQoIjUiKSArIGNoYXJBdCg2KSAhPT0gIm9iamVjdCIpIHsKICAkRVJST1IoJyMxOiBjaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgY2hhckF0KCIxIikgKyBjaGFyQXQoMikgKyBjaGFyQXQoIjMiKSArIGNoYXJBdCg0KSArIGNoYXJBdCgiNSIpICsgY2hhckF0KDYpID09PSAib2JqZWN0Ii4gQWN0dWFsOiAnK2NoYXJBdCgiMSIpICsgY2hhckF0KDIpICsgY2hhckF0KCIzIikgKyBjaGFyQXQoNCkgKyBjaGFyQXQoIjUiKSArIGNoYXJBdCg2KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRob3V0IGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb0ludGVnZXIoKSBldmFsdWF0ZXMgdG8gMCBjaGFyQXQoKSBldmFsdWF0ZXMgdG8gY2hhckF0KDApCmlmICgibGVnbyIuY2hhckF0KCkgIT09ICJsIikgewogICRFUlJPUignIzE6ICJsZWdvIi5jaGFyQXQoKSA9PT0gImwiLiBBY3R1YWw6ICJsZWdvIi5jaGFyQXQoKSA9PT0nKygibGVnbyIuY2hhckF0KCkpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIG51bGwgYXJndW1lbnQgb2YgZnVuY3Rpb24gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKG51bGwpIGV2YWx1YXRlcyB0byAwIGNoYXJBdCgpIGV2YWx1YXRlcyB0byBjaGFyQXQoMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jaGFyQXQobnVsbCkgIT09ICJsIikgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jaGFyQXQobnVsbCkgPT09ICJsIi4gQWN0dWFsOiBmdW5jdGlvbigpe3JldHVybiAibGVnbyJ9KCkuY2hhckF0KG51bGwpID09PScrZnVuY3Rpb24oKXtyZXR1cm4gImxlZ28ifSgpLmNoYXJBdChudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIHggYXJndW1lbnQgb2YgbmV3IFN0cmluZyBvYmplY3QsIHdoZXJlIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIDAgY2hhckF0KCkgZXZhbHVhdGVzIHRvIGNoYXJBdCgwKQppZiAobmV3IFN0cmluZygibGVnbyIpLmNoYXJBdCh4KSAhPT0gImwiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoImxlZ28iKS5jaGFyQXQoeCkgPT09ICJsIi4gQWN0dWFsOiBuZXcgU3RyaW5nKCJsZWdvIikuY2hhckF0KHgpID09PScrbmV3IFN0cmluZygibGVnbyIpLmNoYXJBdCh4KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDciLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIHVuZGVmaW5lZCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIDAgY2hhckF0KCkgZXZhbHVhdGVzIHRvIGNoYXJBdCgwKQppZiAoU3RyaW5nKCJsZWdvIikuY2hhckF0KHVuZGVmaW5lZCkgIT09ICJsIikgewogICRFUlJPUignIzE6IFN0cmluZygibGVnbyIpLmNoYXJBdCh1bmRlZmluZWQpID09PSAibCIuIEFjdHVhbDogU3RyaW5nKCJsZWdvIikuY2hhckF0KHVuZGVmaW5lZCkgPT09JytTdHJpbmcoImxlZ28iKS5jaGFyQXQodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIHZvaWQgMCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHZvaWQgMCkgZXZhbHVhdGVzIHRvIDAgY2hhckF0KCkgZXZhbHVhdGVzIHRvIGNoYXJBdCgwKQppZiAoU3RyaW5nKDQyKS5jaGFyQXQodm9pZCAwKSAhPT0gIjQiKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKDQyKS5jaGFyQXQodm9pZCAwKSA9PT0gIjQiLiBBY3R1YWw6IFN0cmluZyg0MikuY2hhckF0KHZvaWQgMCkgPT09JytTdHJpbmcoNDIpLmNoYXJBdCh2b2lkIDApICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQoKSBmdW5jdGlvbiB3aXRoIGZ1bmN0aW9uKCl7fSgpIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb0ludGVnZXIodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gMCBjaGFyQXQoKSBldmFsdWF0ZXMgdG8gY2hhckF0KDApCmlmIChuZXcgU3RyaW5nKDQyKS5jaGFyQXQoZnVuY3Rpb24oKXt9KCkpICE9PSAiNCIpIHsKICAkRVJST1IoJyMxOiBuZXcgU3RyaW5nKDQyKS5jaGFyQXQoZnVuY3Rpb24oKXt9KCkpID09PSAiNCIuIEFjdHVhbDogbmV3IFN0cmluZyg0MikuY2hhckF0KGZ1bmN0aW9uKCl7fSgpKSA9PT0nK25ldyBTdHJpbmcoNDIpLmNoYXJBdChmdW5jdGlvbigpe30oKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTIiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQXQocG9zKSB3aXRoIG5lZ2F0aXZlIHBvcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19GQUNUT1JZKCl7fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmNoYXJBdCgtMSkgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZS5jaGFyQXQoLTEpID09PSAiIi4gQWN0dWFsOiBfX2luc3RhbmNlLmNoYXJBdCgtMSkgPT09JytfX2luc3RhbmNlLmNoYXJBdCgtMSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTMiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGJpZ2dlciBvZiBzdHJpbmcgbGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jaGFyQXQoMykgIT09ICIiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQyIpOyBfX2luc3RhbmNlLmNoYXJBdCgzKSA9PT0gIiIuIEFjdHVhbDogX19pbnN0YW5jZS5jaGFyQXQoMykgPT09JytfX2luc3RhbmNlLmNoYXJBdCgzKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ29tcGFyZSByZXN1bHRzIG9mIHguY2hhckF0KHBvcykgYW5kIHguc3Vic3RyaW5nKHBvcywgcG9zKzEpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvcih2YXIgaT0wOyBpPDY7IGkrKykgewogIGlmICgiQUJDXHUwMDQxXHUwMDQyXHUwMDQzIi5jaGFyQXQoaSkgIT09ICJcdTAwNDFcdTAwNDJcdTAwNDNBQkMiLnN1YnN0cmluZyhpLCBpKzEpKSB7CiAgICAgICRFUlJPUignIycraSsnOiAiQUJDXFx1MDA0MVxcdTAwNDJcXHUwMDQzIi5jaGFyQXQoJytpKycpID09PSAiXFx1MDA0MVxcdTAwNDJcXHUwMDQzQUJDIi5zdWJzdHJpbmcoJytpKycsICcrKGkrMSkrJykuIEFjdHVhbDogIkFCQ1xcdTAwNDFcXHUwMDQyXFx1MDA0MyIuY2hhckF0KCcraSsnKSA9PT0nKygiQUJDXHUwMDQxXHUwMDQyXHUwMDQzIi5jaGFyQXQoaSkpICk7IAogICAgfQp9CiAgICAKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.4_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ29tcGFyZSByZXN1bHRzIG9mIHguY2hhckF0KHBvcykgYW5kIHguc3Vic3RyaW5nKHBvcywgcG9zKzEpLCB3aGViIHBvcyBpcyBzbWFsbGVyIG9mIHplcm8iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKZm9yKHZhciBpPS0yOyBpPDA7IGkrKykgewogIGlmICgiQUJDXHUwMDQxXHUwMDQyXHUwMDQzIi5jaGFyQXQoaSkgIT09ICJcdTAwNDFcdTAwNDJcdTAwNDNBQkMiLnN1YnN0cmluZyhpLCBpKzEpKSB7CiAgICAgICRFUlJPUignIycrKGkrMikrJzogIkFCQ1xcdTAwNDFcXHUwMDQyXFx1MDA0MyIuY2hhckF0KCcraSsnKSA9PT0gIlxcdTAwNDFcXHUwMDQyXFx1MDA0M0FCQyIuc3Vic3RyaW5nKCcraSsnLCAnKyhpKzEpKycpLiBBY3R1YWw6ICJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiLmNoYXJBdCgnK2krJykgPT09JysoIkFCQ1x1MDA0MVx1MDA0Mlx1MDA0MyIuY2hhckF0KGkpKSApOyAKICAgIH0KfQogICAgCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTRfVDMiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ29tcGFyZSByZXN1bHRzIG9mIHguY2hhckF0KHBvcykgYW5kIHguc3Vic3RyaW5nKHBvcywgcG9zKzEpLCB3aGViIHBvcyBpcyBiaWdnZXIgc3RyaW5nIGxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQpmb3IodmFyIGk9NjsgaTw4OyBpKyspIHsKICBpZiAoIkFCQ1x1MDA0MVx1MDA0Mlx1MDA0MyIuY2hhckF0KGkpICE9PSAiXHUwMDQxXHUwMDQyXHUwMDQzQUJDIi5zdWJzdHJpbmcoaSwgaSsxKSkgewogICAgICAkRVJST1IoJyMnKyhpLTUpKyc6ICJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiLmNoYXJBdCgnK2krJykgPT09ICJcXHUwMDQxXFx1MDA0MlxcdTAwNDNBQkMiLnN1YnN0cmluZygnK2krJywgJysoaSsxKSsnKS4gQWN0dWFsOiAiQUJDXFx1MDA0MVxcdTAwNDJcXHUwMDQzIi5jaGFyQXQoJytpKycpID09PScrKCJBQkNcdTAwNDFcdTAwNDJcdTAwNDMiLmNoYXJBdChpKSkpOyAKICAgIH0KfQogICAgCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTUiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdlIHRvU3RyaW5nIGZ1bmN0aW9uLCBpdCB0cm93IGV4Y2VwdGlvbiwgYW5kIGNhbGwgY2hhckF0KCkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaj17CiAgICB2YWx1ZU9mOjEsCiAgICB0b1N0cmluZzpmdW5jdGlvbigpe3Rocm93ICdpbnRvc3RyaW5nJ30sCiAgICBjaGFyQXQ6U3RyaW5nLnByb3RvdHlwZS5jaGFyQXQKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmouY2hhckF0KCk7CiAgJEZBSUwoJyMxOiBfX29iaj17dmFsdWVPZjoxLHRvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgXCdpbnRvc3RyaW5nXCd9LGNoYXJBdDpTdHJpbmcucHJvdG90eXBlLmNoYXJBdH07ICJ2YXIgeCA9IF9fb2JqLmNoYXJBdCgpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUgIT09ICdpbnRvc3RyaW5nJykgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09IFwnaW50b3N0cmluZ1wnLiBBY3R1YWw6IGV4Y2VwdGlvbiA9PT0nK2UgKTsgCiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTYiLAoKcGF0aDogIjE1LjUuNC40LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuY2hhckF0LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvdG90eXBlICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.4_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTciLAoKcGF0aDogIjE1LjUuNC40LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0IG9iamVjdCBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0OwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiB1bmRlZmluZWQgPSAxIHRocm93IGEgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOyAgCiAgfQp9CgogfQp9KTsKCg==","id":"S15.5.4.4_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTgiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMDogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCnZhciBjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY2hhckF0KXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudD0wOyBmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQpe2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogY291bnQgPT09Jytjb3VudCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjRfQTkiLAoKcGF0aDogIjE1LjUuNC40IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMDogU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5sZW5ndGgpIHsKICAkRVJST1IoJyMxOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQubGVuZ3RoIHJldHVybiBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuY2hhckF0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.4_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTEuMSIsCgpwYXRoOiAiMTUuNS40LjUsIDEzLjIiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBieSB1c2luZyBldmFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt0aGlzLnRvU3RyaW5nID0gZnVuY3Rpb24oKXsgcmV0dXJuICJ3aXphcmQiO307fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICAgCiAgICBpZiAoX19pbnN0YW5jZS5jaGFyQ29kZUF0KGV2YWwoIjEiKSx0cnVlLG51bGwse30pIT09IDB4NjkpIHsKICAgICAgJEVSUk9SKCcjMTogX19pbnN0YW5jZS5jaGFyQ29kZUF0KGV2YWwoIjEiKSx0cnVlLG51bGwse30pPT09IDB4NjkuIEFjdHVhbDogX19pbnN0YW5jZS5jaGFyQ29kZUF0KGV2YWwoIjEiKSx0cnVlLG51bGwse30pPT09JytfX2luc3RhbmNlLmNoYXJDb2RlQXQoZXZhbCgiMSIpLHRydWUsbnVsbCx7fSkpOyAKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S15.5.4.5_A1.1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTEwIiwKCnBhdGg6ICIxNS41LjQuNSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoOwoKU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCAhPT0gX19vYmopIHsKICAkRVJST1IoJyMyOiBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCA9PT0gX19vYmouIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTExIiwKCnBhdGg6ICIxNS41LjQuNSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoNDIpOwoKX19pbnN0YW5jZS5jaGFyQ29kZUF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoKF9faW5zdGFuY2UuY2hhckNvZGVBdChmYWxzZSkgIT09IDUyKXx8KF9faW5zdGFuY2UuY2hhckNvZGVBdCh0cnVlKSAhPT0gNTApKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBPYmplY3QoNDIpOyBfX2luc3RhbmNlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7ICBfX2luc3RhbmNlLmNoYXJDb2RlQXQoZmFsc2UpID09PSA1MiBhbmQgX19pbnN0YW5jZS5jaGFyQ29kZUF0KHRydWUpID09PSA1MC4gQWN0dWFsOiBfX2luc3RhbmNlLmNoYXJDb2RlQXQoZmFsc2UpID09PScrX19pbnN0YW5jZS5jaGFyQ29kZUF0KGZhbHNlKSsnIGFuZCBfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkgPT09JytfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNSIsCgpkZXNjcmlwdGlvbjogIkNhbGwgY2hhckNvZGVBdCgpIGZ1bmN0aW9uIHdpdGggb2JqZWN0IGFyZ3VtZW50IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMTt9fQp2YXIgX19zdHIgPSAibGVnbyI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogIGlmIChjaGFyQ29kZUF0KF9fb2JqKSAhPT0gMHg2NSkgewogICAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIDE7fX07IHZhciBfX3N0ciA9ICJsZWdvIjsgY2hhckNvZGVBdChfX29iaikgPT09IDB4NjUuIEFjdHVhbDogY2hhckNvZGVBdChfX29iaikgPT09JytjaGFyQ29kZUF0KF9fb2JqKSApOyAKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGVxdWF0aW9uIHdpdGggZmFsc2UgYW5kIHRydWUsIGFuZCBpbnN0YW5jZSBpcyBCb29sZWFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsKCl9faW5zdGFuY2UuY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UuY2hhckNvZGVBdChmYWxzZSkhPT0weDY2KSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IF9faW5zdGFuY2UuY2hhckNvZGVBdChmYWxzZSk9PT0weDY2LiBBY3R1YWw6ICcrX19pbnN0YW5jZS5jaGFyQ29kZUF0KGZhbHNlKSk7ICAgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkhPT0weDYxKSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IF9faW5zdGFuY2UuY2hhckNvZGVBdCh0cnVlKT09PTB4NjEuIEFjdHVhbDogJytfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSkpOyAgIAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19pbnN0YW5jZS5jaGFyQ29kZUF0KHRydWUrMSkgIT09IDB4NkMpIHsKICAkRVJST1IoJyMzOiBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47IF9faW5zdGFuY2UuY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgX19pbnN0YW5jZS5jaGFyQ29kZUF0KHRydWUrMSkgPT09IDB4NkMuIEFjdHVhbDogJytfX2luc3RhbmNlLmNoYXJDb2RlQXQodHJ1ZSsxKSApOyAgIAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiVXNlIG51bWJlcnMgYW5kIHN0cmluZ3MgYXMgcG9zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsKCmlmICh0eXBlb2YgdG9TdHJpbmcgPT09ICJ1bmRlZmluZWQiKXsKICAgIHZhciB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoY2hhckNvZGVBdCgiMiIpICE9PSAweDYyKSB7CiAgJEVSUk9SKCcjMTogY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgY2hhckNvZGVBdCgiMiIpID09PSAweDYyLiBBY3R1YWw6ICcrY2hhckNvZGVBdCgiMiIpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoY2hhckNvZGVBdCgzKSAhPT0gMHg2QSkgewogICRFUlJPUignIzI6IGNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IGNoYXJDb2RlQXQoMykgPT09IDB4NkEuIEFjdHVhbDogJytjaGFyQ29kZUF0KDMpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoY2hhckNvZGVBdCgiNCIpICE9PSAweDY1KSB7CiAgJEVSUk9SKCcjMzogY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgY2hhckNvZGVBdCgiNCIpID09PSAweDY1LiBBY3R1YWw6ICcrY2hhckNvZGVBdCgiNCIpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoY2hhckNvZGVBdCg1KSAhPT0gMHg2MykgewogICRFUlJPUignIzQ6IGNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IGNoYXJDb2RlQXQoNSkgPT09IDB4NjMuIEFjdHVhbDogJytjaGFyQ29kZUF0KDUpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAoY2hhckNvZGVBdCgiNiIpICE9PSAweDc0KSB7CiAgJEVSUk9SKCcjNTogY2hhckNvZGVBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgY2hhckNvZGVBdCgiNiIpID09PSAweDc0LiBBY3R1YWw6ICcrY2hhckNvZGVBdCgiNiIpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aG91dCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgTnVtYmVyKCkgZXZhbHVhdGVzIHRvIDAgY2hhckNvZGVBdCgpIGV2YWx1YXRlcyB0byBjaGFyQ29kZUF0KDApCmlmICgic21hcnQiLmNoYXJDb2RlQXQoKSAhPT0gMHg3MykgewogICRFUlJPUignIzE6ICJzbWFydCIuY2hhckNvZGVBdCgpID09PSAweDczLiBBY3R1YWw6ICJzbWFydCIuY2hhckNvZGVBdCgpID09PScrKCJzbWFydCIuY2hhckNvZGVBdCgpKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCBudWxsIGFyZ3VtZW50IG9mIGZ1bmN0aW9uIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcihudWxsKSBldmFsdWF0ZXMgdG8gMCBjaGFyQ29kZUF0KCkgZXZhbHVhdGVzIHRvIGNoYXJDb2RlQXQoMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jaGFyQ29kZUF0KG51bGwpICE9PSAweDZDKSB7CiAgJEVSUk9SKCcjMTogZnVuY3Rpb24oKXtyZXR1cm4gImxlZ28ifSgpLmNoYXJDb2RlQXQobnVsbCkgPT09IDB4NkMuIEFjdHVhbDogJytmdW5jdGlvbigpe3JldHVybiAibGVnbyJ9KCkuY2hhckNvZGVBdChudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCB4IGFyZ3VtZW50IG9mIG5ldyBTdHJpbmcgb2JqZWN0LCB3aGVyZSB4IGlzIHVuZGVmaW5lZCB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAwIGNoYXJDb2RlQXQoKSBldmFsdWF0ZXMgdG8gY2hhckNvZGVBdCgwKQppZiAobmV3IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQoeCkgIT09IDB4NkMpIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQoeCkgPT09IDB4NkMuIEFjdHVhbDogbmV3IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQoeCkgPT09JytuZXcgU3RyaW5nKCJsZWdvIikuY2hhckNvZGVBdCh4KSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDciLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCB1bmRlZmluZWQgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcih1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAwIGNoYXJDb2RlQXQoKSBldmFsdWF0ZXMgdG8gY2hhckNvZGVBdCgwKQppZiAoU3RyaW5nKCJsZWdvIikuY2hhckNvZGVBdCh1bmRlZmluZWQpICE9PSAweDZDKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKCJsZWdvIikuY2hhckNvZGVBdCh1bmRlZmluZWQpID09PSAweDZDLiBBY3R1YWw6IFN0cmluZygibGVnbyIpLmNoYXJDb2RlQXQodW5kZWZpbmVkKSA9PT0nK1N0cmluZygibGVnbyIpLmNoYXJDb2RlQXQodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCB2b2lkIDAgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvSW50ZWdlcih2b2lkIDApIGV2YWx1YXRlcyB0byAwIGNoYXJDb2RlQXQoKSBldmFsdWF0ZXMgdG8gY2hhckNvZGVBdCgwKQppZiAoU3RyaW5nKDQyKS5jaGFyQ29kZUF0KHZvaWQgMCkgIT09IDB4MzQpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcoNDIpLmNoYXJDb2RlQXQodm9pZCAwKSA9PT0gMHgzNC4gQWN0dWFsOiBTdHJpbmcoNDIpLmNoYXJDb2RlQXQodm9pZCAwKSA9PT0nK1N0cmluZyg0MikuY2hhckNvZGVBdCh2b2lkIDApICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KCkgZnVuY3Rpb24gd2l0aCBmdW5jdGlvbigpe30oKSBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9JbnRlZ2VyKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIDAgY2hhckNvZGVBdCgpIGV2YWx1YXRlcyB0byBjaGFyQ29kZUF0KDApCmlmIChuZXcgU3RyaW5nKDQyKS5jaGFyQ29kZUF0KGZ1bmN0aW9uKCl7fSgpKSAhPT0gMHgzNCkgewogICRFUlJPUignIzE6IG5ldyBTdHJpbmcoNDIpLmNoYXJDb2RlQXQoZnVuY3Rpb24oKXt9KCkpID09PSAweDM0LiBBY3R1YWw6IG5ldyBTdHJpbmcoNDIpLmNoYXJDb2RlQXQoZnVuY3Rpb24oKXt9KCkpID09PScrbmV3IFN0cmluZyg0MikuY2hhckNvZGVBdChmdW5jdGlvbigpe30oKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTIiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjaGFyQ29kZUF0KHBvcykgd2l0aCBuZWdhdGl2ZSBwb3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fRkFDVE9SWSgpe307CgpfX0ZBQ1RPUlkucHJvdG90eXBlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghaXNOYU4oX19pbnN0YW5jZS5jaGFyQ29kZUF0KC0xKSkpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt9OyBfX0ZBQ1RPUlkucHJvdG90eXBlLmNoYXJDb2RlQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7IF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZOyBpc05hTihfX2luc3RhbmNlLmNoYXJDb2RlQXQoLTEpKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK2lzTmFOKF9faW5zdGFuY2UuY2hhckNvZGVBdCgtMSkpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTMiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAicG9zIGlzIGJpZ2dlciBvZiBzdHJpbmcgbGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIWlzTmFOKF9faW5zdGFuY2UuY2hhckNvZGVBdCgzKSkpIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IFN0cmluZygiQUJDIik7IGlzTmFOKF9faW5zdGFuY2UuY2hhckNvZGVBdCgzKSkgcmV0dXJuIHRydWUuIEFjdHVhbDogJytpc05hTihfX2luc3RhbmNlLmNoYXJDb2RlQXQoMykpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTQiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdlIHRvU3RyaW5nIGZ1bmN0aW9uLCBpdCB0cm93IGV4Y2VwdGlvbiwgYW5kIGNhbGwgY2hhckNvZGVBdCgpIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmo9ewogICAgdmFsdWVPZjoxLAogICAgdG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAnaW50b3N0cmluZyd9LAogICAgY2hhckNvZGVBdDpTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19vYmouY2hhckNvZGVBdCgpOwogICRGQUlMKCcjMTogICJ2YXIgeCA9IF9fb2JqLmNoYXJDb2RlQXQoKSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmIChlICE9PSAnaW50b3N0cmluZycpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSBcJ2ludG9zdHJpbmdcJy4gQWN0dWFsOiBleGNlcHRpb24gPT09JytlICk7IAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTYiLAoKcGF0aDogIjE1LjUuNC41LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.5_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTciLAoKcGF0aDogIjE1LjUuNC41LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdCBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQ7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdDsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQoKIH0KfSk7Cgo=","id":"S15.5.4.5_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTgiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0LnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2xlbmd0aFwnKSByZXR1cm4gZmFsc2UuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCnZhciBjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdCl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdCl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9IGNvdW50ID09PSAwLiBBY3R1YWw6IGNvdW50ID09PScrY291bnQgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.5_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjVfQTkiLAoKcGF0aDogIjE1LjUuNC41IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNoYXJDb2RlQXQubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5sZW5ndGggcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUuY2hhckNvZGVBdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jaGFyQ29kZUF0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.5_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTEwIiwKCnBhdGg6ICIxNS41LjQuNiIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aDsKClN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5jb25jYXQubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5jb25jYXQubGVuZ3RoOyBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsgU3RyaW5nLnByb3RvdHlwZS5jb25jYXQubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTExIiwKCnBhdGg6ICIxNS41LjQuNiIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBmYWxzZSBhbmQgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsKCl9faW5zdGFuY2UuY29uY2F0ID0gU3RyaW5nLnByb3RvdHlwZS5jb25jYXQ7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmNvbmNhdChmYWxzZSx0cnVlKSAhPT0gIjQyZmFsc2V0cnVlIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KDQyKTsgX19pbnN0YW5jZS5jb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgIF9faW5zdGFuY2UuY29uY2F0KGZhbHNlLHRydWUpID09PSAiNDJmYWxzZXRydWUiLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5jb25jYXQoZmFsc2UsdHJ1ZSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNiIsCgpkZXNjcmlwdGlvbjogIkNhbGwgY29uY2F0KFssWy4uLl1dKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhcmd1bWVudHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxIjt9fQp2YXIgX19vYmoyID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX0KdmFyIF9fb2JqMyA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiA0Mjt9fQp2YXIgX19zdHIgPSAibGVnbyI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCndpdGgoX19zdHIpewogICAgaWYgKGNvbmNhdChfX29iaiwgX19vYmoyLCBfX29iajMsIHgpICE9PSAibGVnb0F0cnVlNDJ1bmRlZmluZWQiKSB7CiAgICAgICRFUlJPUignIzE6IHZhciB4OyB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MSI7fX07IHZhciBfX29iajIgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdHJ1ZTt9fTsgdmFyIF9fb2JqMyA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiA0Mjt9fTsgdmFyIF9fc3RyID0gImxlZ28iOyBjb25jYXQoX19vYmosIF9fb2JqMiwgX19vYmozLCB4KSA9PT0gImxlZ29BdHJ1ZTQydW5kZWZpbmVkIi4gQWN0dWFsOiAnK2NvbmNhdChfX29iaiwgX19vYmoyLCBfX29iajMsIHgpICk7IAogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBlcXVhdGlvbiB3aXRoIGZhbHNlIGFuZCB0cnVlLCBhbmQgaW5zdGFuY2UgaXMgQm9vbGVhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEJvb2xlYW47CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25jYXQoIlx1MDA0MSIsdHJ1ZSx0cnVlKzEpICE9PSAiZmFsc2VBdHJ1ZTIiKSB7CiAgJEVSUk9SKCcjMTogX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOyBfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OyAgX19pbnN0YW5jZS5jb25jYXQoIlxcdTAwNDEiLHRydWUsdHJ1ZSsxKSA9PT0gImZhbHNlQXRydWUyIi4gQWN0dWFsOiAnK19faW5zdGFuY2UuY29uY2F0KCJcdTAwNDEiLHRydWUsdHJ1ZSsxKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiVXNlIG51bWJlcnMgYW5kIGZ1bmN0aW9uIG9iamVjdCBhcyBhcmd1bWVudHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBjb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsKCnZhciBfX29iajUgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gNTt9fTsKCmlmICh0eXBlb2YgdG9TdHJpbmcgPT09ICJ1bmRlZmluZWQiKXsKICAgIHZhciB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoY29uY2F0KDEsMiwzLDQsX19vYmo1KSE9X19jbGFzc19fKyIxMjM0NSIpIHsKICAkRVJST1IoJyMxOiBjb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgY29uY2F0KDEsMiwzLDQsX19vYmo1KT09X19jbGFzc19fKyIxMjM0NSIuIEFjdHVhbDogY29uY2F0KDEsMiwzLDQsX19vYmo1KT09Jytjb25jYXQoMSwyLDMsNCxfX29iajUpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGhvdXQgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIGNvbmNhdCgpIGV2YWx1YXRlcyB0byBjb25jYXQoIiIpCmlmICgibGVnbyIuY29uY2F0KCkgIT09ICJsZWdvIikgewogICRFUlJPUignIzE6ICJsZWdvIi5jb25jYXQoKSA9PT0gImxlZ28iLiBBY3R1YWw6ICcrKCJsZWdvIi5jb25jYXQoKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggbnVsbCBhcmd1bWVudCBvZiBmdW5jdGlvbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIGNvbmNhdChudWxsKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJudWxsIikKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJsZWdvIn0oKS5jb25jYXQobnVsbCkgIT09ICJsZWdvbnVsbCIpIHsKICAkRVJST1IoJyMxOiBmdW5jdGlvbigpe3JldHVybiAibGVnbyJ9KCkuY29uY2F0KG51bGwpID09PSAibGVnb251bGwiLiBBY3R1YWw6ICcrZnVuY3Rpb24oKXtyZXR1cm4gImxlZ28ifSgpLmNvbmNhdChudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggeCBhcmd1bWVudCBvZiBuZXcgU3RyaW5nIG9iamVjdCwgd2hlcmUgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBjb25jYXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJ1bmRlZmluZWQiKQppZiAobmV3IFN0cmluZygibGVnbyIpLmNvbmNhdCh4KSAhPT0gImxlZ291bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoImxlZ28iKS5jb25jYXQoeCkgPT09ICJsZWdvdW5kZWZpbmVkIi4gQWN0dWFsOiAnK25ldyBTdHJpbmcoImxlZ28iKS5jb25jYXQoeCkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDciLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggdW5kZWZpbmVkIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBjb25jYXQodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJ1bmRlZmluZWQiKQppZiAoU3RyaW5nKCJsZWdvIikuY29uY2F0KHVuZGVmaW5lZCkgIT09ICJsZWdvdW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IFN0cmluZygibGVnbyIpLmNvbmNhdCh1bmRlZmluZWQpID09PSAibGVnb3VuZGVmaW5lZCIuIEFjdHVhbDogJytTdHJpbmcoImxlZ28iKS5jb25jYXQodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggdm9pZCAwIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh2b2lkIDApIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBjb25jYXQodm9pZCAwKSBldmFsdWF0ZXMgdG8gY29uY2F0KCJ1bmRlZmluZWQiKQppZiAoU3RyaW5nKDQyKS5jb25jYXQodm9pZCAwKSAhPT0gIjQydW5kZWZpbmVkIikgewogICRFUlJPUignIzE6IFN0cmluZyg0MikuY29uY2F0KHZvaWQgMCkgPT09ICI0MnVuZGVmaW5lZCIuIEFjdHVhbDogJytTdHJpbmcoNDIpLmNvbmNhdCh2b2lkIDApICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.6_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb24oKXt9KCkgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvICJ1bmRlZmluZWQiIGNvbmNhdCh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byBjb25jYXQoInVuZGVmaW5lZCIpCmlmIChuZXcgU3RyaW5nKDQyKS5jb25jYXQoZnVuY3Rpb24oKXt9KCkpICE9PSAiNDJ1bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogbmV3IFN0cmluZyg0MikuY29uY2F0KGZ1bmN0aW9uKCl7fSgpKSA9PT0gIjQydW5kZWZpbmVkIi4gQWN0dWFsOiAnK25ldyBTdHJpbmcoNDIpLmNvbmNhdChmdW5jdGlvbigpe30oKSkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTIiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBjb25jYXQoWyxbLi4uXV0pIGZ1bmN0aW9uIHdpdGggMTI4IGFyZ3VtZW50cyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKCk7CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25jYXQoCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYsCjAsMSwyLDMsNCw1LDYsNyw4LDksMHhBLDB4QiwweEMsMHhELDB4RSwweEYKKSAhPT0gIjAwMTIzNDU2Nzg5MTAxMTEyMTMxNDE1MDEyMzQ1Njc4OTEwMTExMjEzMTQxNTAxMjM0NTY3ODkxMDExMTIxMzE0MTUwMTIzNDU2Nzg5MTAxMTEyMTMxNDE1MDEyMzQ1Njc4OTEwMTExMjEzMTQxNTAxMjM0NTY3ODkxMDExMTIxMzE0MTUwMTIzNDU2Nzg5MTAxMTEyMTMxNDE1MDEyMzQ1Njc4OTEwMTExMjEzMTQxNSIpIHsKICAkRVJST1IoJyMxOiBDYWxsIGNvbmNhdChbLFsuLi5dXSkgZnVuY3Rpb24gd2l0aCAxMjggYXJndW1lbnRzIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgYW55IGVycm9ycycpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgogfQp9KTsKCg==","id":"S15.5.4.6_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTMiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgaW5zdGFuY2UgdGhhdCBpcyBhcHBsaWVkIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIm9uZSIpOwoKX19pbnN0YW5jZS5jb25jYXQoInR3byIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZSAhPSAib25lIikgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJvbmUiKTsgX19pbnN0YW5jZS5jb25jYXQoInR3byIpOyAgX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIm9uZSIpOyBfX2luc3RhbmNlLmNvbmNhdCgidHdvIik7IF9faW5zdGFuY2UgPT0gIm9uZSIuIEFjdHVhbDogJytfX2luc3RhbmNlKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.6_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJvbmUifX07CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5jb25jYXQoInR3byIseCkgIT09ICJvbmV0d291bmRlZmluZWQiKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IF9faW5zdGFuY2UgPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIm9uZSJ9fTsgX19pbnN0YW5jZS5jb25jYXQgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgIF9faW5zdGFuY2UuY29uY2F0KCJ0d28iLHgpID09PSAib25ldHdvdW5kZWZpbmVkIi4gQWN0dWFsOiAnK19faW5zdGFuY2UuY29uY2F0KCJ0d28iLHgpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgoKCiB9Cn0pOwoK","id":"S15.5.4.6_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgZnVuY3Rpb24gb250byBmdW5jdGlvbiwgdGhhdCB0aHJvdyBleGNlcHRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHJpbmciO319Owp2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW5maXJzdGFyZyI7fX07CgpfX2luc3RhbmNlLmNvbmNhdCA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIFN0cmluZy5wcm90b3R5cGUuY29uY2F0LmNhbGwoX19pbnN0YW5jZSxfX29iaiwgbm90ZXhpc3QpOwogICRGQUlMKCcjMTogIlN0cmluZy5wcm90b3R5cGUuY29uY2F0LmNhbGwoX19pbnN0YW5jZSxfX29iaiwgbm90ZXhpc3QpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUgIT09ICJpbnRvc3RyaW5nIikgewogICAgJEVSUk9SKCcjMTogZSA9PT0gImludG9zdHJpbmciLiBBY3R1YWw6ICcrZSApOyAKICB9Cn0gCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIG5vdGV4aXN0OwoKCgoKIH0KfSk7Cgo=","id":"S15.5.4.6_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTYiLAoKcGF0aDogIjE1LjUuNC42LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5jb25jYXQucHJvdG90eXBlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUuY29uY2F0LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jb25jYXQucHJvdG90eXBlICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.6_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTciLAoKcGF0aDogIjE1LjUuNC42LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0IG9iamVjdCBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuY29uY2F0OwoKdHJ5IHsKICB2YXIgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlk7CiAgJEZBSUwoJyMxOiBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdDsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiBsZWFkIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQoKIH0KfSk7Cgo=","id":"S15.5.4.6_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTgiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMxCmlmIChTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2xlbmd0aFwnKSByZXR1cm4gZmFsc2UuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzIKY291bnQgPSAwOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUuY29uY2F0KXsKICBpZiAocD09PSJsZW5ndGgiKSBjb3VudCsrOwp9CgppZiAoY291bnQgIT09IDApIHsKICAkRVJST1IoJyMyOiBjb3VudCA9IDA7IGZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdCl7IGlmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.6_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjZfQTkiLAoKcGF0aDogIjE1LjUuNC42IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCBwcm9wZXJ0eSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMAppZiAoIShTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMwOiBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmxlbmd0aCkgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGggcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzI6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmNvbmNhdC5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUuY29uY2F0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5jb25jYXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.6_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTEwIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzE6IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTExIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aCAhPT0gMSkgewogICRFUlJPUignIzI6IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggPT09IDEuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBmYWxzZSBhbmQgdHJ1ZSwgYW5kIGluc3RhbmNlIGlzIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOwoKX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5pbmRleE9mKHRydWUsIGZhbHNlKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgT2JqZWN0KHRydWUpOyBfX2luc3RhbmNlLmluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7ICBfX2luc3RhbmNlLmluZGV4T2YodHJ1ZSwgZmFsc2UpID09PSAwLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5pbmRleE9mKHRydWUsIGZhbHNlKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkNhbGwgaW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIG9iamVjdCBhcmd1bWVudHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxQiI7fX0KdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX0KdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICBpZiAoaW5kZXhPZihfX29iaiwgX19vYmoyKSAhPT0gMykgewogICAgICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHRydWU7fX07IHZhciBfX3N0ciA9ICJBQkJcdTAwNDFCQUJBQiI7IGluZGV4T2YoX19vYmosIF9fb2JqMikgPT09IDMuIEFjdHVhbDogJytpbmRleE9mKF9fb2JqLCBfX29iajIpICk7IAogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.7_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDExIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkluc3RhbmNlIGlzIERhdGUoMCkgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBEYXRlKDApOwoKX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoKF9faW5zdGFuY2UuZ2V0VGltZXpvbmVPZmZzZXQoKT4wID8gX19pbnN0YW5jZS5pbmRleE9mKCczMScpIDogX19pbnN0YW5jZS5pbmRleE9mKCcwMScpKSAhPT0gOCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgRGF0ZSgwKTsgX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOyAgKF9faW5zdGFuY2UuZ2V0VGltZXpvbmVPZmZzZXQoKT4wID8gX19pbnN0YW5jZS5pbmRleE9mKFwnMzFcJykgOiBfX2luc3RhbmNlLmluZGV4T2YoXCcwMVwnKSkgPT09IDguIEFjdHVhbDogJysoX19pbnN0YW5jZS5nZXRUaW1lem9uZU9mZnNldCgpPjAgPyBfX2luc3RhbmNlLmluZGV4T2YoJzMxJykgOiBfX2luc3RhbmNlLmluZGV4T2YoJzAxJykpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A1_T11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjQuNyIsCgpkZXNjcmlwdGlvbjogIkFyZ3VtZW50IGlzIHN0cmluZywgYW5kIGluc3RhbmNlIGlzIGFycmF5IG9mIHN0cmluZ3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEFycmF5KCduZXcnLCd6b28nLCdyZXZ1ZScpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5pbmRleE9mKCduZXcnKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQXJyYXkoXCduZXdcJyxcJ3pvb1wnLFwncmV2dWVcJyk7IF9faW5zdGFuY2UuaW5kZXhPZihcJ25ld1wnKSA9PT0gMC4gQWN0dWFsOiAnK19faW5zdGFuY2UuaW5kZXhPZignbmV3JykgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2luc3RhbmNlLmluZGV4T2YoJ3pvbycpICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBBcnJheShcJ25ld1wnLFwnem9vXCcsXCdyZXZ1ZVwnKTsgX19pbnN0YW5jZS5pbmRleE9mKFwnem9vXCcpID09PSAxLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5pbmRleE9mKCd6b28nKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBib29sZWFuIGVxdWF0aW9uLCBmdW5jdGlvbiBhbmQgbnVsbCwgYW5kIGluc3RhbmNlIGlzIEJvb2xlYW4gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5pbmRleE9mKCJBIiE9PSJcdTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5pbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mOyAgX19pbnN0YW5jZS5pbmRleE9mKCJBIiE9PSJcXHUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCkgPT09IDAuIEFjdHVhbDogJytfX2luc3RhbmNlLmluZGV4T2YoIkEiIT09Ilx1MDA0MSIsIGZ1bmN0aW9uKCl7cmV0dXJuIDA7fSgpLG51bGwpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7Cgp2YXIgX19vYmpfX3BvcyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIDU7fX07CgppZiAodHlwZW9mIHRvU3RyaW5nID09PSAidW5kZWZpbmVkIil7CiAgICB0b1N0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Cn0KCnZhciBfX2NsYXNzX18gPSB0b1N0cmluZygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoaW5kZXhPZihldmFsKCJcIltcIiIpLF9fb2JqX19wb3MpIT0tMSkgewogICRFUlJPUignIzE6IGluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7IGluZGV4T2YoZXZhbCgiXFwiW1xcIiIpLF9fb2JqX19wb3MpPT0tMS4gQWN0dWFsOiBpbmRleE9mKGV2YWwoIlxcIltcXCIiKSxfX29ial9fcG9zKT09JytpbmRleE9mKGV2YWwoIlwiW1wiIiksX19vYmpfX3BvcykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGhvdXQgYXJndW1lbnRzIG9mIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKCkgZXZhbHVhdGVzIHRvICIiIGluZGV4T2YoKSBldmFsdWF0ZXMgdG8gaW5kZXhPZigiIiwwKQppZiAoIiIuaW5kZXhPZigpICE9PSAtMSkgewogICRFUlJPUignIzE6ICIiLmluZGV4T2YoKSA9PT0gLTEuIEFjdHVhbDogJysoIiIuaW5kZXhPZigpKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggbnVsbCBhcmd1bWVudCBvZiBmdW5jdGlvbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyhudWxsKSBldmFsdWF0ZXMgdG8gIm51bGwiIGluZGV4T2YobnVsbCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoIiIsMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuaW5kZXhPZihudWxsKSAhPT0gMSkgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuaW5kZXhPZihudWxsKSA9PT0gMS4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYSJ9KCkuaW5kZXhPZihudWxsKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggeCBhcmd1bWVudCBvZiBuZXcgU3RyaW5nIG9iamVjdCwgd2hlcmUgeCBpcyB1bmRlZmluZWQgdmFyaWFibGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAiIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoIiIsMCkKaWYgKG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmluZGV4T2YoeCkgIT09IDApIHsKICAkRVJST1IoJyMxOiB2YXIgeDsgbmV3IFN0cmluZygidW5kZWZpbmVkIikuaW5kZXhPZih4KSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmluZGV4T2YoeCkgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgeDsKCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDciLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggdW5kZWZpbmVkIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoInVuZGVmaW5lZCIsMCkKaWYgKFN0cmluZygidW5kZWZpbmVkIikuaW5kZXhPZih1bmRlZmluZWQpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nKCJ1bmRlZmluZWQiKS5pbmRleE9mKHVuZGVmaW5lZCkgPT09IDAuIEFjdHVhbDogJytTdHJpbmcoInVuZGVmaW5lZCIpLmluZGV4T2YodW5kZWZpbmVkKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggdm9pZCAwIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe319OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQovL3NpbmNlIFRvU3RyaW5nKHZvaWQgMCkgZXZhbHVhdGVzIHRvICJ1bmRlZmluZWQiIGluZGV4T2Yodm9pZCAwKSBldmFsdWF0ZXMgdG8gaW5kZXhPZigidW5kZWZpbmVkIikKaWYgKFN0cmluZyhfX29iaikuaW5kZXhPZih2b2lkIDApICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgU3RyaW5nKF9fb2JqKS5pbmRleE9mKHZvaWQgMCkgPT09IDAuIEFjdHVhbDogJytTdHJpbmcoX19vYmopLmluZGV4T2Yodm9pZCAwKSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBpbmRleE9mKHNlYXJjaFN0cmluZywgcG9zaXRpb24pIGZ1bmN0aW9uIHdpdGggZnVuY3Rpb24oKXt9KCkgYXJndW1lbnQgb2Ygc3RyaW5nIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gewogICAgdmFsdWVPZjpmdW5jdGlvbigpe30sCiAgICB0b1N0cmluZzp2b2lkIDAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoInVuZGVmaW5lZCIpCmlmIChuZXcgU3RyaW5nKF9fb2JqKS5pbmRleE9mKGZ1bmN0aW9uKCl7fSgpKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9fb2JqID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt9LCB0b1N0cmluZzp2b2lkIDB9OyBuZXcgU3RyaW5nKF9fb2JqKS5pbmRleE9mKGZ1bmN0aW9uKCl7fSgpKSA9PT0gMC4gQWN0dWFsOiAnK25ldyBTdHJpbmcoX19vYmopLmluZGV4T2YoZnVuY3Rpb24oKXt9KCkpICk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIpIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJhYmNkIi5pbmRleE9mKCJhYmNkYWIiKSE9PS0xKSB7CiAgJEVSUk9SKCcjMTogImFiY2QiLmluZGV4T2YoImFiY2RhYiIpPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIsMCkgYW5kIGNoZWNrIHJlc3VsdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsMCkhPT0tMSkgewogICRFUlJPUignIzE6ICJhYmNkIi5pbmRleE9mKCJhYmNkYWIiLDApPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsMCkpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIsOTkpIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJhYmNkIi5pbmRleE9mKCJhYmNkYWIiLDk5KSE9PS0xKSB7CiAgJEVSUk9SKCcjMTogImFiY2QiLmluZGV4T2YoImFiY2RhYiIsOTkpPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsOTkpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTJfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcImFiY2RcIi5pbmRleE9mKFwiYWJjZGFiXCIsTmFOKSBhbmQgY2hlY2sgcmVzdWx0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiYWJjZCIuaW5kZXhPZigiYWJjZGFiIixOYU4pIT09LTEpIHsKICAkRVJST1IoJyMxOiAiYWJjZCIuaW5kZXhPZigiYWJjZGFiIixOYU4pPT09LTEuIEFjdHVhbDogJysoImFiY2QiLmluZGV4T2YoImFiY2RhYiIsTmFOKSkpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A2_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTNfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcIiQkYWJjZGFiY2RcIi5pbmRleE9mKFwiYWJcIixOYU4pIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCIkJGFiY2RhYmNkIi5pbmRleE9mKCJhYiIsTmFOKSE9PTIpIHsKICAkRVJST1IoJyMxOiAiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLE5hTik9PT0yLiBBY3R1YWw6ICcrKCIkJGFiY2RhYmNkIi5pbmRleE9mKCJhYiIsTmFOKSkpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTNfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcIiQkYWJjZGFiY2RcIi5pbmRleE9mKFwiYWJcIixldmFsKFwiXFxcIi05OVxcXCJcIikpIGFuZCBjaGVjayByZXN1bHQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCIkJGFiY2RhYmNkIi5pbmRleE9mKCJhYiIsZXZhbCgiXCItOTlcIiIpKSE9PTIpIHsKICAkRVJST1IoJyMxOiAiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLGV2YWwoIlxcIi05OVxcIiIpKT09PTIuIEFjdHVhbDogJysoIiQkYWJjZGFiY2QiLmluZGV4T2YoImFiIixldmFsKCJcIi05OVwiIikpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTNfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBcIiQkYWJjZGFiY2RcIi5pbmRleE9mKFwiYWJcIixmdW5jdGlvbigpe3JldHVybiAtSW5maW5pdHk7fSgpKSBhbmQgY2hlY2sgcmVzdWx0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICgiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLCBmdW5jdGlvbigpe3JldHVybiAtSW5maW5pdHk7fSgpKSE9PTIpIHsKICAkRVJST1IoJyMxOiAiJCRhYmNkYWJjZCIuaW5kZXhPZigiYWIiLCBmdW5jdGlvbigpe3JldHVybiAtSW5maW5pdHk7fSgpKT09PTIuIEFjdHVhbDogJysoIiQkYWJjZGFiY2QiLmluZGV4T2YoImFiIiwgZnVuY3Rpb24oKXtyZXR1cm4gLUluZmluaXR5O30oKSkpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludGVnZXIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpOwogICAgICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIT09ImludG9pbnRlZ2VyIikgewogICAgICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOyAKICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBzZWNvbmQgdG9TdHJpbmcgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fQp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCJBQkJcdTAwNDFCQUJBQiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gaW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOyAKICAgICAgfQogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIxIjt9fQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIkFCQlx1MDA0MUJBQkFCIi5pbmRleE9mKF9fb2JqLCBfX29iajIpIT09MykgewogICRFUlJPUignIzE6IHZhciBfX29iaiA9IHt0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiAiXHUwMDQxQiI7fX07IHZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICIxIjt9fTsgIkFCQlxcdTAwNDFCQUJBQiIuaW5kZXhPZihfX29iaiwgX19vYmoyKT09PTMuIEFjdHVhbDogJysoIkFCQlx1MDA0MUJBQkFCIi5pbmRleE9mKF9fb2JqLCBfX29iajIpKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBhbmQgdGhleSB0aHJvdyBleGNlcHRpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50Ijt9fTsKdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDAxLjEwMDAxKTsKTnVtYmVyLnByb3RvdHlwZS5pbmRleE9mPVN0cmluZy5wcm90b3R5cGUuaW5kZXhPZjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX2luc3RhbmNlKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gaW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiAidmFyIHggPSBpbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsgCiAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTRfVDUiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBmaXJzdCBhbmQgc2Vjb25kIHZhbHVlT2YgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319OwoKdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUuaW5kZXhPZiA9IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZjsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSh2b2lkIDApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIHZhciB4ID0gX19pbnN0YW5jZS5pbmRleE9mKF9fb2JqLCBfX29iajIpOwogICRGQUlMKCcjMTogInZhciB4ID0gX19pbnN0YW5jZS5pbmRleE9mKF9fb2JqLCBfX29iajIpIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKGUhPT0iaW50b3N0ciIpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uID09PSAiaW50b3N0ciIuIEFjdHVhbDogJytlKTsgCiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19GQUNUT1JZKCB2YWx1ZSApIHsKICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgIHRoaXMudG9TdHJpbmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuIG5ldyBOdW1iZXI7IH07CiAgICB0aGlzLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZSsiIn07Cn0KCiB9Cn0pOwoK","id":"S15.5.4.7_A4_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDEiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIG9uZSBzeW1ib2wgZnJvbSBiZWdpbiBvZiBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBURVNUX1NUUklORyA9IG5ldyBTdHJpbmcoICIgIVwiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+IiApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQpmb3IgKHZhciAgayA9IDAsIGkgPSAweDAwMjA7IGkgPCAweDAwN2U7IGkrKywgaysrICkgewogICAgaWYgKFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIDAgKSE9PWspIHsKICAgICAgJEVSUk9SKCcjJysoaS0weDAwMjApKyc6IFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpLCAwICk9PT0nK2srJy4gQWN0dWFsOiAnK1RFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIDAgKSk7IAogICAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDIiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIG9uZSBzeW1ib2wgZnJvbSBpdGBzIHBvc2l0aW9uIGluIHRoZSBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBURVNUX1NUUklORyA9IG5ldyBTdHJpbmcoICIgIVwiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+IiApOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQpmb3IgKHZhciAgayA9IDAsIGkgPSAweDAwMjA7IGkgPCAweDAwN2U7IGkrKywgaysrICkgewogICAgaWYgKFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIGsgKSE9PWspIHsKICAgICAgJEVSUk9SKCcjJysoaS0weDAwMjApKyc6IFRFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpLCAnK2srJyApPT09JytrKycuIEFjdHVhbDogJytURVNUX1NUUklORy5pbmRleE9mKCBTdHJpbmcuZnJvbUNoYXJDb2RlKGkpLCBrICkpOyAKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A5_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDMiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIG9uZSBzeW1ib2wgZnJvbSBpdGBzIHBvc2l0aW9uKzEgaW4gdGhlIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIFRFU1RfU1RSSU5HID0gbmV3IFN0cmluZyggIiAhXCIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX4iICk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvciAoIHZhciBrID0gMCwgaSA9IDB4MDAyMDsgaSA8IDB4MDA3ZTsgaSsrLCBrKysgKSB7CiAgICBpZiAoVEVTVF9TVFJJTkcuaW5kZXhPZiggU3RyaW5nLmZyb21DaGFyQ29kZShpKSwgaysxICkgIT09IC0xKSB7CiAgICAgICRFUlJPUignIycrKGktMHgwMDIwKSsnOiBURVNUX1NUUklORy5pbmRleE9mKCBTdHJpbmcuZnJvbUNoYXJDb2RlKCcraSsnKSwgJysoaysxKSsnICk9PT0tMS4gQWN0dWFsOiAnK1RFU1RfU1RSSU5HLmluZGV4T2YoIFN0cmluZy5mcm9tQ2hhckNvZGUoaSksIGsrMSApKTsgCiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A5_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDQiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIHN1YnN0cmluZyBmcm9tIGJlZ2luIG9mIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIFRFU1RfU1RSSU5HID0gbmV3IFN0cmluZyggIiAhXCIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX4iICk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvciAodmFyIGsgPSAwLCBpID0gMHgwMDIwOyBpIDwgMHgwMDdkOyBpKyssIGsrKyApIHsKICAgIGlmIChURVNUX1NUUklORy5pbmRleE9mKCAoU3RyaW5nLmZyb21DaGFyQ29kZShpKSsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzEpICsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzIpKSwgMCApIT09aykgewogICAgICAkRVJST1IoJyMnKyhpLTB4MDAyMCkrJzogVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMSkrJykgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMikrJykpLCAwICk9PT0nK2srJy4gQWN0dWFsOiAnK1RFU1RfU1RSSU5HLmluZGV4T2YoIChTdHJpbmcuZnJvbUNoYXJDb2RlKGkpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkrMSkgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkrMikpLCAwICkpOyAKICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A5_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDUiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIHN1YnN0cmluZyBmcm9tIGl0YHMgcG9zaXRpb24gaW4gdGhlIHN0cmluZyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIFRFU1RfU1RSSU5HID0gbmV3IFN0cmluZyggIiAhXCIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX4iICk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmZvciAoIHZhciBrID0gMCwgaSA9IDB4MDAyMDsgaSA8IDB4MDA3ZDsgaSsrLCBrKysgKSB7CiAgICBpZiAoVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoaSkrIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsxKSsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzIpKSxrICkgIT09aykgewogICAgICAkRVJST1IoJyMnKyhpLTB4MDAyMCkrJzogVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoJytpKycpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMSkrJykgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKCcrKGkrMikrJykpLCAnK2srJyApPT09JytrKycuIEFjdHVhbDogJytURVNUX1NUUklORy5pbmRleE9mKCAoU3RyaW5nLmZyb21DaGFyQ29kZShpKSsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzEpICsgU3RyaW5nLmZyb21DaGFyQ29kZShpKzIpKSwgayApKTsgCiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A5_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTVfVDYiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiU2VhcmNoIHN1YnN0cmluZyBmcm9tIGl0YHMgcG9zaXRpb24rMSBpbiB0aGUgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgVEVTVF9TVFJJTkcgPSBuZXcgU3RyaW5nKCAiICFcIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fiIgKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKZm9yICh2YXIgayA9IDAsIGkgPSAweDAwMjA7IGkgPCAweDAwN2Q7IGkrKywgaysrICkgewogICAgaWYgKFRFU1RfU1RSSU5HLmluZGV4T2YoIChTdHJpbmcuZnJvbUNoYXJDb2RlKGkpKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkrMSkrIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsyKSksIGsrMSApIT09IC0xKSB7CiAgICAgICRFUlJPUignIycrKGktMHgwMDIwKSsnOiBURVNUX1NUUklORy5pbmRleE9mKCAoU3RyaW5nLmZyb21DaGFyQ29kZSgnK2krJykrIFN0cmluZy5mcm9tQ2hhckNvZGUoJysoaSsxKSsnKSArIFN0cmluZy5mcm9tQ2hhckNvZGUoJysoaSsyKSsnKSksICcrKGsrMSkrJyApPT09IC0xLiBBY3R1YWw6ICcrVEVTVF9TVFJJTkcuaW5kZXhPZiggKFN0cmluZy5mcm9tQ2hhckNvZGUoaSkrIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsxKSArIFN0cmluZy5mcm9tQ2hhckNvZGUoaSsyKSksIGsrMSApKTsgCiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.7_A5_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTYiLAoKcGF0aDogIjE1LjUuNC43LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLnByb3RvdHlwZSApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTciLAoKcGF0aDogIjE1LjUuNC43LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZiBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Y7ICJfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWSIgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikgIT09IHRydWUpIHsKICAgICRFUlJPUignIzEuMjogdmFyIF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZjsgIl9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZIiB0aHJvdyBhIFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KICAkUFJJTlQoZSk7Cn0KCiB9Cn0pOwoK","id":"S15.5.4.7_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTgiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMwOiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIENIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMgp2YXIgY291bnQ9MDsKCmZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YpewogIGlmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7Cn0KCmlmIChjb3VudCAhPT0gMCkgewogICRFUlJPUignIzI6IGNvdW50PTA7IGZvciAocCBpbiBTdHJpbmcucHJvdG90eXBlLmluZGV4T2Ype2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.7_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjdfQTkiLAoKcGF0aDogIjE1LjUuNC43IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRkFJTCgnIzA6IFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmluZGV4T2YubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5sZW5ndGggcmF0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7IAp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.7_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTEwIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMTogU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoOwoKU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGggPSBmdW5jdGlvbigpe3JldHVybiAic2hpZnRlZCI7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTExIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMyOiBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDEwIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkNhbGwgbGFzdEluZGV4T2Yoc2VhcmNoU3RyaW5nLCBwb3NpdGlvbikgZnVuY3Rpb24gd2l0aCBvYmplY3QgYXJndW1lbnRzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiBOYU47fX0KdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgaWYgKGxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpICE9PSA3KSB7CiAgICAkRVJST1IoJyMxOiB2YXIgeDsgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIE5hTjt9fTsgdmFyIF9fc3RyID0gIkFCQlx1MDA0MUJBQkFCIjtsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKSA9PT0gNy4gQWN0dWFsOiAnK2xhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpICk7CiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIHg7CgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDEyIiwKCnBhdGg6ICIxNS41LjQuOCIsCgpkZXNjcmlwdGlvbjogIkFyZ3VtZW50IGlzIHN0cmluZywgYW5kIGluc3RhbmNlIGlzIGFycmF5IG9mIHN0cmluZ3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2luc3RhbmNlID0gbmV3IEFycmF5KCduZXcnLCd6b28nLCdyZXZ1ZScpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5sYXN0SW5kZXhPZignbmV3JykgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX2luc3RhbmNlID0gbmV3IEFycmF5KFwnbmV3XCcsXCd6b29cJyxcJ3JldnVlXCcpOyBfX2luc3RhbmNlLmxhc3RJbmRleE9mKFwnbmV3XCcpID09PSAwLiBBY3R1YWw6ICcrX19pbnN0YW5jZS5sYXN0SW5kZXhPZignbmV3JykgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9faW5zdGFuY2UubGFzdEluZGV4T2YoJ3pvbycpICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogX19pbnN0YW5jZSA9IG5ldyBBcnJheShcJ25ld1wnLFwnem9vXCcsXCdyZXZ1ZVwnKTsgX19pbnN0YW5jZS5sYXN0SW5kZXhPZihcJ3pvb1wnKSA9PT0gMS4gQWN0dWFsOiAnK19faW5zdGFuY2UubGFzdEluZGV4T2YoJ3pvbycpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQXJndW1lbnRzIGFyZSBib29sZWFuIGVxdWF0aW9uLCBmdW5jdGlvbiBhbmQgbnVsbCwgYW5kIGluc3RhbmNlIGlzIEJvb2xlYW4gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19pbnN0YW5jZSA9IG5ldyBCb29sZWFuOwoKX19pbnN0YW5jZS5sYXN0SW5kZXhPZiA9IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Y7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmxhc3RJbmRleE9mKCJBIiE9PSJcdTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKSAhPT0gMCkgewogICRFUlJPUignIzE6IF9faW5zdGFuY2UgPSBuZXcgQm9vbGVhbjsgX19pbnN0YW5jZS5sYXN0SW5kZXhPZiA9IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Y7ICBfX2luc3RhbmNlLmxhc3RJbmRleE9mKCJBIiE9PSJcXHUwMDQxIiwgZnVuY3Rpb24oKXtyZXR1cm4gMDt9KCksbnVsbCkgPT09IDAuIEFjdHVhbDogJytfX2luc3RhbmNlLmxhc3RJbmRleE9mKCJBIiE9PSJcdTAwNDEiLCBmdW5jdGlvbigpe3JldHVybiAwO30oKSxudWxsKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDMiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgYnkgdXNpbmcgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGxhc3RJbmRleE9mID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZjsKCnZhciBfX29ial9fcG9zID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXtyZXR1cm4gNzt9fTsKCmlmICh0eXBlb2YgdG9TdHJpbmcgPT09ICJ1bmRlZmluZWQiKXsKICB2YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp9Cgp2YXIgX19jbGFzc19fID0gdG9TdHJpbmcoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGxhc3RJbmRleE9mKGV2YWwoIlwiW1wiIiksX19vYmpfX3BvcykhPSAwKSB7CiAgJEVSUk9SKCcjMTogbGFzdEluZGV4T2YoZXZhbCgiXFwiW1xcIiIpLF9fb2JqX19wb3MpPT0gMC4gQWN0dWFsOiAnK2xhc3RJbmRleE9mKGV2YWwoIlwiW1wiIiksX19vYmpfX3BvcykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDQiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRob3V0IGFyZ3VtZW50cyBvZiBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZygpIGV2YWx1YXRlcyB0byAiIiBsYXN0SW5kZXhPZigpIGV2YWx1YXRlcyB0byBsYXN0SW5kZXhPZigiIiwwKQppZiAoIiIubGFzdEluZGV4T2YoKSAhPT0gLTEpIHsKICAkRVJST1IoJyMxOiAiIi5sYXN0SW5kZXhPZigpID09PSAtMS4gQWN0dWFsOiAnKygiIi5sYXN0SW5kZXhPZigpKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDUiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIG51bGwgYXJndW1lbnQgb2YgZnVuY3Rpb24gb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcobnVsbCkgZXZhbHVhdGVzIHRvICJudWxsIiBsYXN0SW5kZXhPZihudWxsKSBldmFsdWF0ZXMgdG8gbGFzdEluZGV4T2YoIiIsMCkKaWYgKGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYXp6Z251bGwifSgpLmxhc3RJbmRleE9mKG51bGwpICE9PSAxMSkgewogICRFUlJPUignIzE6IGZ1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYXp6Z251bGwifSgpLmxhc3RJbmRleE9mKG51bGwpID09PSAxMS4gQWN0dWFsOiAnK2Z1bmN0aW9uKCl7cmV0dXJuICJnbnVsbHVuYXp6Z251bGwifSgpLmxhc3RJbmRleE9mKG51bGwpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDYiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIHggYXJndW1lbnQgb2YgbmV3IFN0cmluZyBvYmplY3QsIHdoZXJlIHggaXMgdW5kZWZpbmVkIHZhcmlhYmxlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gIiIgbGFzdEluZGV4T2YodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gbGFzdEluZGV4T2YoIiIsMCkKaWYgKG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmxhc3RJbmRleE9mKHgpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogdmFyIHg7IG5ldyBTdHJpbmcoInVuZGVmaW5lZCIpLmxhc3RJbmRleE9mKHgpID09PSAwLiBBY3R1YWw6ICcrbmV3IFN0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YoeCkgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciB4OwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDciLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIHVuZGVmaW5lZCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCi8vc2luY2UgVG9TdHJpbmcodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gInVuZGVmaW5lZCIgbGFzdEluZGV4T2YodW5kZWZpbmVkKSBldmFsdWF0ZXMgdG8gbGFzdEluZGV4T2YoInVuZGVmaW5lZCIsMCkKaWYgKFN0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YodW5kZWZpbmVkKSAhPT0gMCkgewogICRFUlJPUignIzE6IFN0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YodW5kZWZpbmVkKSA9PT0gMC4gQWN0dWFsOiAnK1N0cmluZygidW5kZWZpbmVkIikubGFzdEluZGV4T2YodW5kZWZpbmVkKSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A1_T7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDgiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIHZvaWQgMCBhcmd1bWVudCBvZiBzdHJpbmcgb2JqZWN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh2b2lkIDApIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBsYXN0SW5kZXhPZih2b2lkIDApIGV2YWx1YXRlcyB0byBsYXN0SW5kZXhPZigidW5kZWZpbmVkIiwwKQppZiAoU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZih2b2lkIDApICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZih2b2lkIDApID09PSAwLiBBY3R1YWw6ICcrU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZih2b2lkIDApICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTFfVDkiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBsYXN0SW5kZXhPZihzZWFyY2hTdHJpbmcsIHBvc2l0aW9uKSBmdW5jdGlvbiB3aXRoIGZ1bmN0aW9uKCl7fSgpIGFyZ3VtZW50IG9mIHN0cmluZyBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IHsKICB2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwKICB0b1N0cmluZzp2b2lkIDAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKLy9zaW5jZSBUb1N0cmluZyh1bmRlZmluZWQpIGV2YWx1YXRlcyB0byAidW5kZWZpbmVkIiBpbmRleE9mKHVuZGVmaW5lZCkgZXZhbHVhdGVzIHRvIGluZGV4T2YoInVuZGVmaW5lZCIpCmlmIChuZXcgU3RyaW5nKF9fb2JqKS5sYXN0SW5kZXhPZihmdW5jdGlvbigpe30oKSkgIT09IDApIHsKICAkRVJST1IoJyMxOiBfX29iaiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7fSwgdG9TdHJpbmc6dm9pZCAwfTsgbmV3IFN0cmluZyhfX29iaikubGFzdEluZGV4T2YoZnVuY3Rpb24oKXt9KCkpID09PSAwLiBBY3R1YWw6ICcrbmV3IFN0cmluZyhfX29iaikubGFzdEluZGV4T2YoZnVuY3Rpb24oKXt9KCkpICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A1_T9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDEiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCB2YWx1ZU9mIHRocm93IGV4Y2VwdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fQp2YXIgX19vYmoyID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b2ludGVnZXIiO319CnZhciBfX3N0ciA9IHtzdHJfXzoiQUJCXHUwMDQxQkFCQUIifTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKd2l0aChfX3N0cil7CiAgICB3aXRoKHN0cl9fKXsKICAgICAgICB0cnkgewogICAgICAgICAgdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgICAgICRGQUlMKCcjMTogdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIT09ImludG9pbnRlZ2VyIikgewogICAgICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.8_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDIiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBzZWNvbmQgdG9TdHJpbmcgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fQp2YXIgX19zdHIgPSBuZXcgU3RyaW5nKCJBQkJcdTAwNDFCQUJBQiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9fc3RyKXsKICAgIHRyeSB7CiAgICAgIHZhciB4ID0gbGFzdEluZGV4T2YoX19vYmosIF9fb2JqMik7CiAgICAgICRGQUlMKCcjMTogdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBpZiAoZSE9PSJpbnRvaW50ZWdlciIpIHsKICAgICAgICAkRVJST1IoJyMxLjE6IEV4Y2VwdGlvbiA9PT0gImludG9pbnRlZ2VyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDMiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gIlx1MDA0MUIiO319CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB7fTt9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7fX0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCJBQkJcdTAwNDFCQUJBQiIubGFzdEluZGV4T2YoX19vYmosIF9fb2JqMikhPT03KSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fb2JqID0ge3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuICJcdTAwNDFCIjt9fTsgdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7cmV0dXJuIHt9O30sdG9TdHJpbmc6ZnVuY3Rpb24oKXt9fTsgIkFCQlxcdTAwNDFCQUJBQiIubGFzdEluZGV4T2YoX19vYmosIF9fb2JqMik9PT03LiBBY3R1YWw6ICcrKCJBQkJcdTAwNDFCQUJBQiIubGFzdEluZGV4T2YoX19vYmosIF9fb2JqMikpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.8_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDQiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBhbmQgdGhleSB0aHJvdyBleGNlcHRpb25zIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXt0aHJvdyAiaW50b3N0ciI7fX07CnZhciBfX29iajIgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93ICJpbnRvaW50Ijt9fTsKdmFyIF9faW5zdGFuY2UgPSBuZXcgTnVtYmVyKDEwMDAxLjEwMDAxKTsKTnVtYmVyLnByb3RvdHlwZS5sYXN0SW5kZXhPZj1TdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp3aXRoKF9faW5zdGFuY2UpewogICAgdHJ5IHsKICAgICAgdmFyIHggPSBsYXN0SW5kZXhPZihfX29iaiwgX19vYmoyKTsKICAgICAgJEZBSUwoJyMxOiB2YXIgeCA9IGxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIT09ImludG9zdHIiKSB7CiAgICAgICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogICAgICB9CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTRfVDUiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGUgdG9TdHJpbmcgYW5kIHZhbHVlT2YgZnVuY3Rpb25zLCBmaXJzdCBhbmQgc2Vjb25kIHZhbHVlT2YgdGhyb3cgZXhjZXB0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19vYmogPSB7dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4ge307fSx2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9zdHIiO319OwoKdmFyIF9fb2JqMiA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgImludG9pbnRlZ2VyIjt9fTsKCl9fRkFDVE9SWS5wcm90b3R5cGUubGFzdEluZGV4T2YgPSBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mOwoKdmFyIF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZKHZvaWQgMCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgdmFyIHggPSBfX2luc3RhbmNlLmxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpOwogICRGQUlMKCcjMTogdmFyIHggPSBfX2luc3RhbmNlLmxhc3RJbmRleE9mKF9fb2JqLCBfX29iajIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoZSE9PSJpbnRvc3RyIikgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gPT09ICJpbnRvc3RyIi4gQWN0dWFsOiAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fRkFDVE9SWSggdmFsdWUgKSB7CiAgICB0aGlzLnZhbHVlID0gdmFsdWU7CiAgICB0aGlzLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7IHJldHVybiBuZXcgTnVtYmVyOyB9OwogICAgdGhpcy52YWx1ZU9mPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWUrIiJ9Owp9CgogfQp9KTsKCg==","id":"S15.5.4.8_A4_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTYiLAoKcGF0aDogIjE1LjUuNC44LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5wcm90b3R5cGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YucHJvdG90eXBlICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5wcm90b3R5cGUgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.8_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTciLAoKcGF0aDogIjE1LjUuNC44LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Ygb2JqZWN0IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZjsKCnRyeSB7CiAgdmFyIF9faW5zdGFuY2UgPSBuZXcgX19GQUNUT1JZOwogICRGQUlMKCcjMTogX19GQUNUT1JZID0gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZjsgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkgewogICRQUklOVChlKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.8_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTgiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLnByb3BlcnR5SXNFbnVtZXJhYmxlKFwnbGVuZ3RoXCcpIHJldHVybiBmYWxzZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCmNvdW50PTA7Cgpmb3IgKHAgaW4gU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZil7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2Ype2lmIChwPT09Imxlbmd0aCIpIGNvdW50Kys7fTsgY291bnQgPT09IDAuIEFjdHVhbDogJytjb3VudCApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.8_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjhfQTkiLAoKcGF0aDogIjE1LjUuNC44IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YubGVuZ3RoIHByb3BlcnR5IGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMwCmlmICghKFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSkgewogICRGQUlMKCcjMDogU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmxlbmd0aCkgewogICRFUlJPUignIzE6IGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmxlbmd0aCByZXR1cm4gZmFsc2UnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEZBSUwoJyMyOiBkZWxldGUgU3RyaW5nLnByb3RvdHlwZS5sYXN0SW5kZXhPZi5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUubGFzdEluZGV4T2YuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxhc3RJbmRleE9mLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.8_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTEwIiwKCnBhdGg6ICIxNS41LjQuOSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIGlmIHZhcnlpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX29iaiA9IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGg7CgpTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoID0gZnVuY3Rpb24oKXtyZXR1cm4gInNoaWZ0ZWQiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoICE9PSBfX29iaikgewogICRFUlJPUignIzI6IF9fb2JqID0gU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmxlbmd0aDsgU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmxlbmd0aCA9IGZ1bmN0aW9uKCl7cmV0dXJuICJzaGlmdGVkIjt9OyBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoID09PSBfX29iai4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.9_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTExIiwKCnBhdGg6ICIxNS41LjQuOSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMxOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.4.9_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTFfVDEiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiVGhpcyBzdHJpbmcgaXMgc3ltYm9sIGFuZCBhcmd1bWVudHMgYXJlIHN5bWJvbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBzdHIxID0gbmV3IFN0cmluZygiaCIpOyAKLy9DSEVDSyMxCnZhciBzdHIyID0gbmV3IFN0cmluZyAoIlx4NjgiKTsKaWYgIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0wKXsKICAkRVJST1IoJyMxOiB2YXIgc3RyMSA9IG5ldyBTdHJpbmcoImgiKTsgdmFyIHN0cjIgPSBuZXcgU3RyaW5nICgiXFx4NjgiKTsgc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpPT09MC4gQWN0dWFsOiAnK3N0cjEubG9jYWxlQ29tcGFyZShzdHIyKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgc3RyMiA9IG5ldyBTdHJpbmcgKCJcdTAwNjgiKTsKaWYgIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0wKXsKICAkRVJST1IoJyMyOiB2YXIgc3RyMSA9IG5ldyBTdHJpbmcoImgiKTsgdmFyIHN0cjIgPSBuZXcgU3RyaW5nICgiXFx1MDA2OCIpOyBzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMik9PT0wLiBBY3R1YWw6ICcrc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpKTsKfQoKLy9DSEVDSyMzCnZhciBzdHIyID0gbmV3IFN0cmluZyAoImgiKTsKaWYgIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0wKXsKICAkRVJST1IoJyMzOiB2YXIgc3RyMSA9IG5ldyBTdHJpbmcoImgiKTsgdmFyIHN0cjIgPSBuZXcgU3RyaW5nICgiaCIpOyBzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMik9PT0wLiBBY3R1YWw6ICcrc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpKTsKfQoKIH0KfSk7Cgo=","id":"S15.5.4.9_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTFfVDIiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiQ2FsbCBzdHJpbmdfMS5sb2NhbGVDb21wYXJlKHN0cmluZ18yKSBpcyBlcXVhbCAtc3RyaW5nXzIubG9jYWxlQ29tcGFyZShzdHJpbmdfMSkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vQ0hFQ0sjMQp2YXIgc3RyMSA9ICJoIjsKdmFyIHN0cjIgPSAiSCI7CmlmIChzdHIxLmxvY2FsZUNvbXBhcmUoc3RyMikhPT0tc3RyMi5sb2NhbGVDb21wYXJlKHN0cjEpKXsKICAkRVJST1IoJyMxLjE6IHZhciBzdHIxID0gImgiOyB2YXIgc3RyMiA9ICJIIjsgc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpPT09LXN0cjIubG9jYWxlQ29tcGFyZShzdHIxKS4gQWN0dWFsOiAnK3N0cjEubG9jYWxlQ29tcGFyZShzdHIyKSk7Cn0KCiB9Cn0pOwoK","id":"S15.5.4.9_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTYiLAoKcGF0aDogIjE1LjUuNC45LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcrU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3RvdHlwZSApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.9_A6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTciLAoKcGF0aDogIjE1LjUuNC45LCAxMy4yIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgY3JlYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSBvYmplY3QgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZBQ1RPUlkgPSBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmU7Cgp0cnkgewogIHZhciBfX2luc3RhbmNlID0gbmV3IF9fRkFDVE9SWTsKICAkRkFJTCgnIzE6IF9fRkFDVE9SWSA9IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZTsgX19pbnN0YW5jZSA9IG5ldyBfX0ZBQ1RPUlkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkge30KCiB9Cn0pOwoK","id":"S15.5.4.9_A7"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTgiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMwOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8gQ0hFQ0sjMQppZiAoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLnByb3BlcnR5SXNFbnVtZXJhYmxlKCdsZW5ndGgnKSkgewogICRFUlJPUignIzE6IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2xlbmd0aFwnKSByZXR1cm4gZmFsc2UnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBDSEVDSyMyCnZhciBjb3VudD0wOwoKZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSl7CiAgaWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzsKfQoKaWYgKGNvdW50ICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogY291bnQ9MDsgZm9yIChwIGluIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZSl7aWYgKHA9PT0ibGVuZ3RoIikgY291bnQrKzt9OyBjb3VudCA9PT0gMC4gQWN0dWFsOiAnK2NvdW50ICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.4.9_A8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS40LjlfQTkiLAoKcGF0aDogIjE1LjUuNC45IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcHJvcGVydHkgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKCEoU3RyaW5nLnByb3RvdHlwZS5sb2NhbGVDb21wYXJlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpIHsKICAkRVJST1IoJyMwOiBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgcmV0dXJuIHRydWUuIEFjdHVhbDogJytTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBTdHJpbmcucHJvdG90eXBlLmxvY2FsZUNvbXBhcmUubGVuZ3RoKSB7CiAgJEVSUk9SKCcjMTogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGggcmV0dXJuIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5sZW5ndGg7IFN0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK1N0cmluZy5wcm90b3R5cGUubG9jYWxlQ29tcGFyZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.4.9_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTEiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRlIHN0cmluZ3MgYW5kIGNoZWNrIGl0cyBsZW5ndGgiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJBQkNcdTAwNDFcdTAwNDJcdTAwNDMiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fc3RyX19pbnN0YW5jZS5sZW5ndGggIT09IDYpIHsKICAkRVJST1IoJyMxOiB2YXIgX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZygiQUJDXFx1MDA0MVxcdTAwNDJcXHUwMDQzIik7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGggPT09IDYsIHdoZXJlIF9fc3RyX19pbnN0YW5jZSBpcyBuZXcgU3RyaW5nKCJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiKS4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSAwKSB7CiAgJEVSUk9SKCcjMjogX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZzsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gMCwgd2hlcmUgX19zdHJfX2luc3RhbmNlIGlzIG5ldyBTdHJpbmcuIEFjdHVhbDogX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0nK19fc3RyX19pbnN0YW5jZS5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5.1_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTIiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZW51bWVyYXRpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBTdHJpbmcgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOyBfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmZvcihwcm9wIGluIF9fc3RyX19pbnN0YW5jZSl7CiAgICBpZiAocHJvcCA9PT0gImxlbmd0aCIpIHsKICAgICAgJEVSUk9SKCcjMjogbGVuZ3RoIHByb3BlcnR5IGhhcyB0aGUgYXR0cmlidXRlcyB7RG9udEVudW19Jyk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5.1_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTMiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBTdHJpbmcgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIShfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKSkgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJnbG9iZ2xvYiIpOyBfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpIHJldHVybiB0cnVlLiBBY3R1YWw6ICcrX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChkZWxldGUgX19zdHJfX2luc3RhbmNlID09PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IGRlbGV0ZSBfX3N0cl9faW5zdGFuY2UgIT09IHRydWUnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKCEoX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSkpIHsKICAkRVJST1IoJyMzOiB2YXIgX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZygiZ2xvYmdsb2IiKTsgZGVsZXRlIF9fc3RyX19pbnN0YW5jZTsgX19zdHJfX2luc3RhbmNlLmhhc093blByb3BlcnR5KCJsZW5ndGgiKSByZXR1cm4gdHJ1ZS4gQWN0dWFsOiAnK19fc3RyX19pbnN0YW5jZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S15.5.5.1_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTQiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgbGVuZ3RoIHByb3BlcnR5IG9mIFN0cmluZyBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKF9fc3RyX19pbnN0YW5jZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikpKSB7CiAgJEVSUk9SKCcjMTogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IF9fc3RyX19pbnN0YW5jZS5oYXNPd25Qcm9wZXJ0eSgibGVuZ3RoIikgcmV0dXJuIHRydWUuIEFjdHVhbDogJytfX3N0cl9faW5zdGFuY2UuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fc3RyX19pbnN0YW5jZS5sZW5ndGggIT09IDgpIHsKICAkRVJST1IoJyMyOiB2YXIgX19zdHJfX2luc3RhbmNlID0gbmV3IFN0cmluZygiZ2xvYmdsb2IiKTsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gOC4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyX19pbnN0YW5jZS5sZW5ndGg9LTE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA4KSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGg9LTE7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGggPT09IDgoYWZ0ZXIgcmVkZWZpbmUgbGVuZ3RoIHByb3BlcnR5KS4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCndpdGgoX19zdHJfX2luc3RhbmNlKQogICAgbGVuZ3RoID0gMDsKICAgIAovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA4KSB7CiAgJEVSUk9SKCcjNDogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IHdpdGgoX19zdHJfX2luc3RhbmNlKSBsZW5ndGggPSAwOyBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PSA4KGFmdGVyIHJlZGVmaW5lIGxlbmd0aCBwcm9wZXJ0eSB3aXRoIHVzaW5nICJ3aXRoIikuIEFjdHVhbDogX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0nK19fc3RyX19pbnN0YW5jZS5sZW5ndGggKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpfX3N0cl9faW5zdGFuY2UubGVuZ3RoKys7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA4KSB7CiAgJEVSUk9SKCcjNTogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoImdsb2JnbG9iIik7IF9fc3RyX19pbnN0YW5jZS5sZW5ndGgrKzsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gOChhZnRlciByZWRlZmluZSBsZW5ndGggcHJvcGVydHkgd2l0aCB1c2luZyAiKysiKS4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5.1_A4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41LjFfQTUiLAoKcGF0aDogIjE1LjUuNS4xIiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdlIHZhbHVlT2YgYW5kIHRvU3RyaW5nIG9mIFN0cmluZyBvYmplY3QgYW5kIGNoZWNrIGxlbmd0aCBwcm9wZXJ0eSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQ1x1MDA0MVx1MDA0Mlx1MDA0MyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdHJfX2luc3RhbmNlLmxlbmd0aCAhPT0gNikgewogICRFUlJPUignIzE6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiKTsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gNi4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fc3RyX19pbnN0YW5jZS52YWx1ZU9mID0gZnVuY3Rpb24oKXtyZXR1cm4gImVkIn07Cl9fc3RyX19pbnN0YW5jZS50b1N0cmluZyA9IGZ1bmN0aW9uKCl7cmV0dXJuICJlZCJ9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19zdHJfX2luc3RhbmNlICE9ImVkIikgewogICRFUlJPUignIzI6IHZhciBfX3N0cl9faW5zdGFuY2UgPSBuZXcgU3RyaW5nKCJBQkNcXHUwMDQxXFx1MDA0MlxcdTAwNDMiKTsgX19zdHJfX2luc3RhbmNlLnZhbHVlT2YgPSBmdW5jdGlvbigpe3JldHVybiAiZWQifTsgX19zdHJfX2luc3RhbmNlLnRvU3RyaW5nID0gZnVuY3Rpb24oKXtyZXR1cm4gImVkIn07IF9fc3RyX19pbnN0YW5jZSA9PSJlZCIuIEFjdHVhbDogX19zdHJfX2luc3RhbmNlID09JytfX3N0cl9faW5zdGFuY2UgKTsgCn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX3N0cl9faW5zdGFuY2UubGVuZ3RoICE9PSA2KSB7CiAgJEVSUk9SKCcjMzogdmFyIF9fc3RyX19pbnN0YW5jZSA9IG5ldyBTdHJpbmcoIkFCQ1xcdTAwNDFcXHUwMDQyXFx1MDA0MyIpOyBfX3N0cl9faW5zdGFuY2UudmFsdWVPZiA9IGZ1bmN0aW9uKCl7cmV0dXJuICJlZCJ9OyBfX3N0cl9faW5zdGFuY2UudG9TdHJpbmcgPSBmdW5jdGlvbigpe3JldHVybiAiZWQifTsgX19zdHJfX2luc3RhbmNlLmxlbmd0aCA9PT0gNi4gQWN0dWFsOiBfX3N0cl9faW5zdGFuY2UubGVuZ3RoID09PScrX19zdHJfX2luc3RhbmNlLmxlbmd0aCApOyAKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5.1_A5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0ExX1QxIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDcmVhdGUgbmV3IFN0cmluZyBhbmQgdHJ5IGNhbGwgaXQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBTdHJpbmc7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgX19zdHIoKTsKICAkRkFJTCgnIzE6IF9fc3RyID0gbmV3IFN0cmluZzsgX19zdHIoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0ExX1QyIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyBuZXcgXCJTdHJpbmcoXCJhfGJcIikoKVwiIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7CiAgU3RyaW5nKCJhfGIiKSgpOwogICRGQUlMKCcjMTogU3RyaW5nKCJhfGIiKSgpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoIShlIGluc3RhbmNlb2YgVHlwZUVycm9yKSkgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gaXMgaW5zdGFuY2Ugb2YgVHlwZUVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0EyX1QxIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDcmVhdGUgbmV3IHN0cmluZyBvYmplY3QgYW5kIHRyeSBuZXcgY3JlYXRlZF9zdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX3N0ciA9IG5ldyBPYmplY3QoIiIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIG5ldyBfX3N0cjsKICAkRkFJTCgnIzE6IF9fc3RyID0gbmV3IE9iamVjdCgiIik7ICJuZXcgX19zdHIiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoIShlIGluc3RhbmNlb2YgVHlwZUVycm9yKSkgewogICAgJEVSUk9SKCcjMS4xOiBFeGNlcHRpb24gaXMgaW5zdGFuY2Ugb2YgVHlwZUVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S15.5.5_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTUuNS41X0EyX1QyIiwKCnBhdGg6ICIxNS41LjUiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBjcmVhdGluZyBcIm5ldyBTdHJpbmdcIiBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewogIG5ldyBuZXcgU3RyaW5nOwogICRGQUlMKCcjMTogIm5ldyBuZXcgU3RyaW5nIiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7CiAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgICRFUlJPUignIzEuMTogRXhjZXB0aW9uIGlzIGluc3RhbmNlIG9mIFR5cGVFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S15.5.5_A2_T2"}]}} \ No newline at end of file diff --git a/website/resources/scripts/testcases/testcaseslist.json b/website/resources/scripts/testcases/testcaseslist.json index 6138afaf5d..c5e60faaef 100644 --- a/website/resources/scripts/testcases/testcaseslist.json +++ b/website/resources/scripts/testcases/testcaseslist.json @@ -1 +1 @@ -{"date":"2011-03-23","numTests":10443,"testSuite":["resources/scripts/testcases/07_Lexical_Conventions.json","resources/scripts/testcases/08_Types.json","resources/scripts/testcases/09_Type_Conversion.json","resources/scripts/testcases/10_Execution_Contexts.json","resources/scripts/testcases/11.10_Binary_Bitwise_Operators.json","resources/scripts/testcases/11.11_Binary_Logical_Operators.json","resources/scripts/testcases/11.12_Conditional_Operator.json","resources/scripts/testcases/11.13_Assignment_Operators.json","resources/scripts/testcases/11.14_Comma_Operator.json","resources/scripts/testcases/11.1_Primary_Expressions.json","resources/scripts/testcases/11.2_Left_Hand_Side_Expressions.json","resources/scripts/testcases/11.3_PostfixExpressions.json","resources/scripts/testcases/11.4_Unary_Operators.json","resources/scripts/testcases/11.5_Multiplicative_Operators.json","resources/scripts/testcases/11.6_Additive_Operators.json","resources/scripts/testcases/11.7_Bitwise_Shift_Operators.json","resources/scripts/testcases/11.8_Relational_Operators.json","resources/scripts/testcases/11.9_Equality_Operators.json","resources/scripts/testcases/12_Statement.json","resources/scripts/testcases/13_Function_Definition.json","resources/scripts/testcases/14_Program.json","resources/scripts/testcases/15.10_RegExp_Objects.json","resources/scripts/testcases/15.11_Error_Objects.json","resources/scripts/testcases/15.1_The_Global_Object.json","resources/scripts/testcases/15.2_Object_Objects.json","resources/scripts/testcases/15.3_Function_Objects.json","resources/scripts/testcases/15.4_Array_Objects.json","resources/scripts/testcases/15.5_String_Objects.json","resources/scripts/testcases/15.6_Boolean_Objects.json","resources/scripts/testcases/15.7_Number_Objects.json","resources/scripts/testcases/15.8_The_Math_Object.json","resources/scripts/testcases/15.9_Date_Objects.json","resources/scripts/testcases/chapter07.json","resources/scripts/testcases/chapter10.json","resources/scripts/testcases/chapter11.json","resources/scripts/testcases/chapter12.json","resources/scripts/testcases/chapter13.json","resources/scripts/testcases/15.1.json","resources/scripts/testcases/15.10.json","resources/scripts/testcases/15.11.json","resources/scripts/testcases/15.12.json","resources/scripts/testcases/15.2.3.1.json","resources/scripts/testcases/15.2.3.10.json","resources/scripts/testcases/15.2.3.11.json","resources/scripts/testcases/15.2.3.12.json","resources/scripts/testcases/15.2.3.13.json","resources/scripts/testcases/15.2.3.14.json","resources/scripts/testcases/15.2.3.2.json","resources/scripts/testcases/15.2.3.3.json","resources/scripts/testcases/15.2.3.4.json","resources/scripts/testcases/15.2.3.5.json","resources/scripts/testcases/15.2.3.6.json","resources/scripts/testcases/15.2.3.7.json","resources/scripts/testcases/15.2.3.8.json","resources/scripts/testcases/15.2.3.9.json","resources/scripts/testcases/15.2.4.json","resources/scripts/testcases/15.3.json","resources/scripts/testcases/15.4.3.json","resources/scripts/testcases/15.4.4.10.json","resources/scripts/testcases/15.4.4.12.json","resources/scripts/testcases/15.4.4.14.json","resources/scripts/testcases/15.4.4.15.json","resources/scripts/testcases/15.4.4.16.json","resources/scripts/testcases/15.4.4.17.json","resources/scripts/testcases/15.4.4.18.json","resources/scripts/testcases/15.4.4.19.json","resources/scripts/testcases/15.4.4.20.json","resources/scripts/testcases/15.4.4.21.json","resources/scripts/testcases/15.4.4.22.json","resources/scripts/testcases/15.4.4.4.json","resources/scripts/testcases/15.4.5.json","resources/scripts/testcases/15.5.json","resources/scripts/testcases/15.7.json","resources/scripts/testcases/15.9.json"],"version":"0.6.2"} \ No newline at end of file +{"date":"2011-03-23","numTests":10442,"testSuite":["resources/scripts/testcases/07_Lexical_Conventions.json","resources/scripts/testcases/08_Types.json","resources/scripts/testcases/09_Type_Conversion.json","resources/scripts/testcases/10_Execution_Contexts.json","resources/scripts/testcases/11.10_Binary_Bitwise_Operators.json","resources/scripts/testcases/11.11_Binary_Logical_Operators.json","resources/scripts/testcases/11.12_Conditional_Operator.json","resources/scripts/testcases/11.13_Assignment_Operators.json","resources/scripts/testcases/11.14_Comma_Operator.json","resources/scripts/testcases/11.1_Primary_Expressions.json","resources/scripts/testcases/11.2_Left_Hand_Side_Expressions.json","resources/scripts/testcases/11.3_PostfixExpressions.json","resources/scripts/testcases/11.4_Unary_Operators.json","resources/scripts/testcases/11.5_Multiplicative_Operators.json","resources/scripts/testcases/11.6_Additive_Operators.json","resources/scripts/testcases/11.7_Bitwise_Shift_Operators.json","resources/scripts/testcases/11.8_Relational_Operators.json","resources/scripts/testcases/11.9_Equality_Operators.json","resources/scripts/testcases/12_Statement.json","resources/scripts/testcases/13_Function_Definition.json","resources/scripts/testcases/14_Program.json","resources/scripts/testcases/15.10_RegExp_Objects.json","resources/scripts/testcases/15.11_Error_Objects.json","resources/scripts/testcases/15.1_The_Global_Object.json","resources/scripts/testcases/15.2_Object_Objects.json","resources/scripts/testcases/15.3_Function_Objects.json","resources/scripts/testcases/15.4_Array_Objects.json","resources/scripts/testcases/15.5_String_Objects.json","resources/scripts/testcases/15.6_Boolean_Objects.json","resources/scripts/testcases/15.7_Number_Objects.json","resources/scripts/testcases/15.8_The_Math_Object.json","resources/scripts/testcases/15.9_Date_Objects.json","resources/scripts/testcases/chapter07.json","resources/scripts/testcases/chapter10.json","resources/scripts/testcases/chapter11.json","resources/scripts/testcases/chapter12.json","resources/scripts/testcases/chapter13.json","resources/scripts/testcases/15.1.json","resources/scripts/testcases/15.10.json","resources/scripts/testcases/15.11.json","resources/scripts/testcases/15.12.json","resources/scripts/testcases/15.2.3.1.json","resources/scripts/testcases/15.2.3.10.json","resources/scripts/testcases/15.2.3.11.json","resources/scripts/testcases/15.2.3.12.json","resources/scripts/testcases/15.2.3.13.json","resources/scripts/testcases/15.2.3.14.json","resources/scripts/testcases/15.2.3.2.json","resources/scripts/testcases/15.2.3.3.json","resources/scripts/testcases/15.2.3.4.json","resources/scripts/testcases/15.2.3.5.json","resources/scripts/testcases/15.2.3.6.json","resources/scripts/testcases/15.2.3.7.json","resources/scripts/testcases/15.2.3.8.json","resources/scripts/testcases/15.2.3.9.json","resources/scripts/testcases/15.2.4.json","resources/scripts/testcases/15.3.json","resources/scripts/testcases/15.4.3.json","resources/scripts/testcases/15.4.4.10.json","resources/scripts/testcases/15.4.4.12.json","resources/scripts/testcases/15.4.4.14.json","resources/scripts/testcases/15.4.4.15.json","resources/scripts/testcases/15.4.4.16.json","resources/scripts/testcases/15.4.4.17.json","resources/scripts/testcases/15.4.4.18.json","resources/scripts/testcases/15.4.4.19.json","resources/scripts/testcases/15.4.4.20.json","resources/scripts/testcases/15.4.4.21.json","resources/scripts/testcases/15.4.4.22.json","resources/scripts/testcases/15.4.4.4.json","resources/scripts/testcases/15.4.5.json","resources/scripts/testcases/15.5.json","resources/scripts/testcases/15.7.json","resources/scripts/testcases/15.9.json"],"version":"0.6.2"} \ No newline at end of file