From 994e6f304927f79d3d2742760440d231b64e4c08 Mon Sep 17 00:00:00 2001 From: David Fugate Date: Wed, 20 Apr 2011 16:52:14 -0700 Subject: [PATCH] A previous check-in made today lost generation of 'N.0' test section directories for tests covering a given chapter, N, without delving into subsections. This in turn broken the Results page which was by default displaying individual results for chapters 13(.0) and 14(.0). Fixed. --- test/suite/SputnikGlobalScope.js | 2 +- .../{S13_A1.js => 13.0_Chapter/S13.0_A1.js} | 4 +-- .../{S13_A10.js => 13.0_Chapter/S13.0_A10.js} | 4 +-- .../S13.0_A11_T1.js} | 4 +-- .../S13.0_A11_T2.js} | 4 +-- .../S13.0_A11_T3.js} | 4 +-- .../S13.0_A11_T4.js} | 4 +-- .../S13.0_A12_T1.js} | 4 +-- .../S13.0_A12_T2.js} | 4 +-- .../S13.0_A13_T1.js} | 4 +-- .../S13.0_A13_T2.js} | 4 +-- .../S13.0_A13_T3.js} | 4 +-- .../{S13_A14.js => 13.0_Chapter/S13.0_A14.js} | 4 +-- .../S13.0_A15_T1.js} | 4 +-- .../S13.0_A15_T2.js} | 4 +-- .../S13.0_A15_T3.js} | 4 +-- .../S13.0_A15_T4.js} | 4 +-- .../S13.0_A15_T5.js} | 4 +-- .../{S13_A16.js => 13.0_Chapter/S13.0_A16.js} | 4 +-- .../S13.0_A17_T1.js} | 4 +-- .../S13.0_A17_T2.js} | 4 +-- .../{S13_A18.js => 13.0_Chapter/S13.0_A18.js} | 4 +-- .../S13.0_A19_T1.js} | 4 +-- .../S13.0_A19_T2.js} | 4 +-- .../S13.0_A2_T1.js} | 4 +-- .../S13.0_A2_T2.js} | 4 +-- .../S13.0_A2_T3.js} | 4 +-- .../S13.0_A3_T1.js} | 4 +-- .../S13.0_A3_T2.js} | 4 +-- .../S13.0_A3_T3.js} | 4 +-- .../S13.0_A4_T1.js} | 4 +-- .../S13.0_A4_T2.js} | 4 +-- .../S13.0_A4_T3.js} | 4 +-- .../S13.0_A4_T4.js} | 4 +-- .../{S13_A5.js => 13.0_Chapter/S13.0_A5.js} | 4 +-- .../S13.0_A6_T1.js} | 4 +-- .../S13.0_A6_T2.js} | 4 +-- .../S13.0_A7_T1.js} | 4 +-- .../S13.0_A7_T2.js} | 4 +-- .../S13.0_A7_T3.js} | 0 .../S13.0_A8_T1.js} | 4 +-- .../S13.0_A8_T2.js} | 4 +-- .../{S13_A9.js => 13.0_Chapter/S13.0_A9.js} | 4 +-- .../{S14_A1.js => 14.0_Chapter/S14.0_A1.js} | 4 +-- .../{S14_A2.js => 14.0_Chapter/S14.0_A2.js} | 4 +-- .../{S14_A3.js => 14.0_Chapter/S14.0_A3.js} | 4 +-- .../S14.0_A5_T1.js} | 4 +-- .../S14.0_A5_T2.js} | 4 +-- tools/SputnikConverter/SputnikTestCase.cs | 29 ++++++------------ ...Microsoft.Sputnik.Interop.ParserEngine.exe | Bin 24064 -> 24064 bytes ...Microsoft.Sputnik.Interop.ParserEngine.pdb | Bin 52736 -> 48640 bytes .../testcases/13_Function_Definition.json | 2 +- .../scripts/testcases/14_Program.json | 2 +- .../scripts/testcases/SputnikGlobalScope.js | 2 +- .../scripts/testcases/testcaseslist.json | 2 +- 55 files changed, 106 insertions(+), 117 deletions(-) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A1.js => 13.0_Chapter/S13.0_A1.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A10.js => 13.0_Chapter/S13.0_A10.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A11_T1.js => 13.0_Chapter/S13.0_A11_T1.js} (88%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A11_T2.js => 13.0_Chapter/S13.0_A11_T2.js} (89%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A11_T3.js => 13.0_Chapter/S13.0_A11_T3.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A11_T4.js => 13.0_Chapter/S13.0_A11_T4.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A12_T1.js => 13.0_Chapter/S13.0_A12_T1.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A12_T2.js => 13.0_Chapter/S13.0_A12_T2.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A13_T1.js => 13.0_Chapter/S13.0_A13_T1.js} (88%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A13_T2.js => 13.0_Chapter/S13.0_A13_T2.js} (89%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A13_T3.js => 13.0_Chapter/S13.0_A13_T3.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A14.js => 13.0_Chapter/S13.0_A14.js} (88%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A15_T1.js => 13.0_Chapter/S13.0_A15_T1.js} (88%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A15_T2.js => 13.0_Chapter/S13.0_A15_T2.js} (89%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A15_T3.js => 13.0_Chapter/S13.0_A15_T3.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A15_T4.js => 13.0_Chapter/S13.0_A15_T4.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A15_T5.js => 13.0_Chapter/S13.0_A15_T5.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A16.js => 13.0_Chapter/S13.0_A16.js} (86%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A17_T1.js => 13.0_Chapter/S13.0_A17_T1.js} (92%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A17_T2.js => 13.0_Chapter/S13.0_A17_T2.js} (92%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A18.js => 13.0_Chapter/S13.0_A18.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A19_T1.js => 13.0_Chapter/S13.0_A19_T1.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A19_T2.js => 13.0_Chapter/S13.0_A19_T2.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A2_T1.js => 13.0_Chapter/S13.0_A2_T1.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A2_T2.js => 13.0_Chapter/S13.0_A2_T2.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A2_T3.js => 13.0_Chapter/S13.0_A2_T3.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A3_T1.js => 13.0_Chapter/S13.0_A3_T1.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A3_T2.js => 13.0_Chapter/S13.0_A3_T2.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A3_T3.js => 13.0_Chapter/S13.0_A3_T3.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A4_T1.js => 13.0_Chapter/S13.0_A4_T1.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A4_T2.js => 13.0_Chapter/S13.0_A4_T2.js} (92%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A4_T3.js => 13.0_Chapter/S13.0_A4_T3.js} (92%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A4_T4.js => 13.0_Chapter/S13.0_A4_T4.js} (94%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A5.js => 13.0_Chapter/S13.0_A5.js} (94%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A6_T1.js => 13.0_Chapter/S13.0_A6_T1.js} (90%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A6_T2.js => 13.0_Chapter/S13.0_A6_T2.js} (91%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A7_T1.js => 13.0_Chapter/S13.0_A7_T1.js} (94%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A7_T2.js => 13.0_Chapter/S13.0_A7_T2.js} (93%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A7_T3.js => 13.0_Chapter/S13.0_A7_T3.js} (100%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A8_T1.js => 13.0_Chapter/S13.0_A8_T1.js} (92%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A8_T2.js => 13.0_Chapter/S13.0_A8_T2.js} (92%) rename test/suite/sputnik_converted/13_Function_Definition/{S13_A9.js => 13.0_Chapter/S13.0_A9.js} (89%) rename test/suite/sputnik_converted/14_Program/{S14_A1.js => 14.0_Chapter/S14.0_A1.js} (92%) rename test/suite/sputnik_converted/14_Program/{S14_A2.js => 14.0_Chapter/S14.0_A2.js} (91%) rename test/suite/sputnik_converted/14_Program/{S14_A3.js => 14.0_Chapter/S14.0_A3.js} (92%) rename test/suite/sputnik_converted/14_Program/{S14_A5_T1.js => 14.0_Chapter/S14.0_A5_T1.js} (91%) rename test/suite/sputnik_converted/14_Program/{S14_A5_T2.js => 14.0_Chapter/S14.0_A5_T2.js} (91%) diff --git a/test/suite/SputnikGlobalScope.js b/test/suite/SputnikGlobalScope.js index e4908e6ec0..e728bfebd4 100644 --- a/test/suite/SputnikGlobalScope.js +++ b/test/suite/SputnikGlobalScope.js @@ -346,7 +346,7 @@ GlobalScopeTests["S12.9_A1_T6"]={"assertion":"Appearing of \"return\" without a GlobalScopeTests["S12.9_A1_T7"]={"assertion":"Appearing of \"return\" without a function body leads to syntax error","description":"Checking if execution of \"return x\" with no function, placed inside Block, fails","id":"S12.9_A1_T7","path":"12_Statement\\12.9_The_return_Statement\\S12.9_A1_T7.js","negative":"."}; GlobalScopeTests["S12.9_A1_T8"]={"assertion":"Appearing of \"return\" without a function body leads to syntax error","description":"Checking if execution of \"return x\" with no function, placed into a loop, fails","id":"S12.9_A1_T8","path":"12_Statement\\12.9_The_return_Statement\\S12.9_A1_T8.js","negative":"."}; GlobalScopeTests["S12.9_A1_T9"]={"assertion":"Appearing of \"return\" without a function body leads to syntax error","description":"Checking if execution of \"return\", placed into a catch Block, fails","id":"S12.9_A1_T9","path":"12_Statement\\12.9_The_return_Statement\\S12.9_A1_T9.js","negative":"."}; -GlobalScopeTests["S13_A7_T3"]={"assertion":"The FunctionBody must be SourceElements","description":"Checking if execution of \"function __func(){\\A\\B\\C}\" fails","id":"S13_A7_T3","path":"13_Function_Definition\\S13_A7_T3.js","negative":"."}; +GlobalScopeTests["S13.0_A7_T3"]={"assertion":"The FunctionBody must be SourceElements","description":"Checking if execution of \"function __func(){\\A\\B\\C}\" fails","id":"S13.0_A7_T3","path":"13_Function_Definition\\13.0_Chapter\\S13.0_A7_T3.js","negative":"."}; GlobalScopeTests["S15.10.2.11_A1_T2"]={"assertion":"DecimalEscape :: DecimalIntegerLiteral [lookahead not in DecimalDigit]","description":"It is an error if n is greater than the total number of left capturing parentheses in the entire regular expression","id":"S15.10.2.11_A1_T2","path":"15_Native\\15.10_RegExp_Objects\\15.10.2_Pattern_Semantics\\15.10.2.11_DecimalEscape\\S15.10.2.11_A1_T2.js","negative":"."}; GlobalScopeTests["S15.10.2.11_A1_T3"]={"assertion":"DecimalEscape :: DecimalIntegerLiteral [lookahead not in DecimalDigit]","description":"It is an error if n is greater than the total number of left capturing parentheses in the entire regular expression","id":"S15.10.2.11_A1_T3","path":"15_Native\\15.10_RegExp_Objects\\15.10.2_Pattern_Semantics\\15.10.2.11_DecimalEscape\\S15.10.2.11_A1_T3.js","negative":"."}; GlobalScopeTests["S15.1_A1_T1"]={"assertion":"The global object does not have a [[Construct]] property","description":"It is not possible to use the global object as a constructor","id":"S15.1_A1_T1","path":"15_Native\\15.1_The_Global_Object\\S15.1_A1_T1.js","negative":"."}; diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A1.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A1.js index 9fa4f391d0..e5d1b3bd59 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A1", +id: "S13.0_A1", -path: "13_Function_Definition\S13_A1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A1.js", assertion: "\"x=function y(){}\" statement does not store a reference to the new function in the varaible y(Identifier)", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A10.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A10.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A10.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A10.js index 925b69297b..fce4896899 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A10.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A10.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A10", +id: "S13.0_A10", -path: "13_Function_Definition\S13_A10.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A10.js", assertion: "Function is a data", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T1.js similarity index 88% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A11_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T1.js index 11a8f98e5b..639f2c1e37 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A11_T1", +id: "S13.0_A11_T1", -path: "13_Function_Definition\S13_A11_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A11_T1.js", assertion: "Since arguments property has attribute { DontDelete }, only its elements can be deleted", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T2.js similarity index 89% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A11_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T2.js index f8cc57b948..7e8047f77f 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A11_T2", +id: "S13.0_A11_T2", -path: "13_Function_Definition\S13_A11_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A11_T2.js", assertion: "Since arguments property has attribute { DontDelete }, only its elements can be deleted", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T3.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A11_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T3.js index 65c40fa5d3..e548f8bf2a 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T3.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A11_T3", +id: "S13.0_A11_T3", -path: "13_Function_Definition\S13_A11_T3.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A11_T3.js", assertion: "Since arguments property has attribute { DontDelete }, only its elements can be deleted", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T4.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T4.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A11_T4.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T4.js index 9dea9d5a39..c131c5dca2 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A11_T4.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A11_T4.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A11_T4", +id: "S13.0_A11_T4", -path: "13_Function_Definition\S13_A11_T4.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A11_T4.js", assertion: "Since arguments property has attribute { DontDelete }, only its elements can be deleted", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A12_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A12_T1.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A12_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A12_T1.js index 6f2f7e0a19..8a2b42ceba 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A12_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A12_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A12_T1", +id: "S13.0_A12_T1", -path: "13_Function_Definition\S13_A12_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A12_T1.js", assertion: "Function declarations in global or function scope are {DontDelete}", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A12_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A12_T2.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A12_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A12_T2.js index 3ed56a429b..1ffc8a9eda 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A12_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A12_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A12_T2", +id: "S13.0_A12_T2", -path: "13_Function_Definition\S13_A12_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A12_T2.js", assertion: "Function declarations in global or function scope are {DontDelete}", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A13_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T1.js similarity index 88% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A13_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T1.js index d65defe85d..d078990ebf 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A13_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A13_T1", +id: "S13.0_A13_T1", -path: "13_Function_Definition\S13_A13_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A13_T1.js", assertion: "Deleting arguments[i] leads to breaking the connection to local reference", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A13_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T2.js similarity index 89% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A13_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T2.js index 0afcd6f6f4..05b25fca0b 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A13_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A13_T2", +id: "S13.0_A13_T2", -path: "13_Function_Definition\S13_A13_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A13_T2.js", assertion: "Deleting arguments[i] leads to breaking the connection to local reference", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A13_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T3.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A13_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T3.js index e542eaa0a1..a364d29848 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A13_T3.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A13_T3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A13_T3", +id: "S13.0_A13_T3", -path: "13_Function_Definition\S13_A13_T3.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A13_T3.js", assertion: "Deleting arguments[i] leads to breaking the connection to local reference", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A14.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A14.js similarity index 88% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A14.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A14.js index 6019ff847d..0c2a78c7ca 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A14.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A14.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A14", +id: "S13.0_A14", -path: "13_Function_Definition\S13_A14.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A14.js", assertion: "Unicode symbols in function name are allowed", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T1.js similarity index 88% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A15_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T1.js index 1a9da0a551..e899143abd 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A15_T1", +id: "S13.0_A15_T1", -path: "13_Function_Definition\S13_A15_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A15_T1.js", assertion: "\'\'arguments\'\' variable overrides ActivationObject.arguments", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T2.js similarity index 89% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A15_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T2.js index 0ff19fdacb..68ceec55d2 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A15_T2", +id: "S13.0_A15_T2", -path: "13_Function_Definition\S13_A15_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A15_T2.js", assertion: "\'\'arguments\'\' variable overrides ActivationObject.arguments", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T3.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A15_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T3.js index fae2f22ef6..55a10b2430 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T3.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A15_T3", +id: "S13.0_A15_T3", -path: "13_Function_Definition\S13_A15_T3.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A15_T3.js", assertion: "\'\'arguments\'\' variable overrides ActivationObject.arguments", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T4.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T4.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A15_T4.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T4.js index e1281e8280..0bd1714348 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T4.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T4.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A15_T4", +id: "S13.0_A15_T4", -path: "13_Function_Definition\S13_A15_T4.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A15_T4.js", assertion: "\'\'arguments\'\' variable overrides ActivationObject.arguments", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T5.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T5.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A15_T5.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T5.js index d662492487..264862332f 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A15_T5.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A15_T5.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A15_T5", +id: "S13.0_A15_T5", -path: "13_Function_Definition\S13_A15_T5.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A15_T5.js", assertion: "\'\'arguments\'\' variable overrides ActivationObject.arguments", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A16.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A16.js similarity index 86% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A16.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A16.js index e26d18c671..f9a05154e9 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A16.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A16.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A16", +id: "S13.0_A16", -path: "13_Function_Definition\S13_A16.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A16.js", assertion: "Any separators are admitted between declaration chunks", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A17_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A17_T1.js similarity index 92% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A17_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A17_T1.js index 6d5d42b954..bf9e509a07 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A17_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A17_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A17_T1", +id: "S13.0_A17_T1", -path: "13_Function_Definition\S13_A17_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A17_T1.js", assertion: "Function call cannot appear in the program before the FunctionExpression appears", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A17_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A17_T2.js similarity index 92% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A17_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A17_T2.js index 73227cfc1c..b2e72970e0 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A17_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A17_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A17_T2", +id: "S13.0_A17_T2", -path: "13_Function_Definition\S13_A17_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A17_T2.js", assertion: "Function call cannot appear in the program before the FunctionExpression appears", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A18.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A18.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A18.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A18.js index 16cefd1c67..d6159e94bc 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A18.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A18.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A18", +id: "S13.0_A18", -path: "13_Function_Definition\S13_A18.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A18.js", assertion: "Closures are admitted", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A19_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A19_T1.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A19_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A19_T1.js index db864b2ea5..063edfb9de 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A19_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A19_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A19_T1", +id: "S13.0_A19_T1", -path: "13_Function_Definition\S13_A19_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A19_T1.js", assertion: "\"var\" does not override function declaration", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A19_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A19_T2.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A19_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A19_T2.js index d9c501933e..625279fe06 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A19_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A19_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A19_T2", +id: "S13.0_A19_T2", -path: "13_Function_Definition\S13_A19_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A19_T2.js", assertion: "\"var\" does not override function declaration", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A2_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T1.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A2_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T1.js index c15f0f96e7..7dbf1a6f15 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A2_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A2_T1", +id: "S13.0_A2_T1", -path: "13_Function_Definition\S13_A2_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A2_T1.js", assertion: "function must be evaluated inside the expression", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A2_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T2.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A2_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T2.js index 2f82fcfcef..4fc27472b4 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A2_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A2_T2", +id: "S13.0_A2_T2", -path: "13_Function_Definition\S13_A2_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A2_T2.js", assertion: "function must be evaluated inside the expression", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A2_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T3.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A2_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T3.js index c9773286aa..e04b5e594d 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A2_T3.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A2_T3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A2_T3", +id: "S13.0_A2_T3", -path: "13_Function_Definition\S13_A2_T3.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A2_T3.js", assertion: "function must be evaluated inside the expression", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A3_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T1.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A3_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T1.js index 5d4a6a1343..e56965a1ab 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A3_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T1.js @@ -13,9 +13,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A3_T1", +id: "S13.0_A3_T1", -path: "13_Function_Definition\S13_A3_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A3_T1.js", assertion: "The Identifier in a FunctionExpression can be referenced from inside the FunctionExpression\'s FunctionBody to allow the function calling itself recursively", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A3_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T2.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A3_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T2.js index d24af9143d..22d0e7233d 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A3_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T2.js @@ -13,9 +13,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A3_T2", +id: "S13.0_A3_T2", -path: "13_Function_Definition\S13_A3_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A3_T2.js", assertion: "The Identifier in a FunctionExpression can be referenced from inside the FunctionExpression\'s FunctionBody to allow the function calling itself recursively", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A3_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T3.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A3_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T3.js index 31afd57c4e..df51055e2c 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A3_T3.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A3_T3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A3_T3", +id: "S13.0_A3_T3", -path: "13_Function_Definition\S13_A3_T3.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A3_T3.js", assertion: "The Identifier in a FunctionExpression can be referenced from inside the FunctionExpression\'s FunctionBody to allow the function calling itself recursively", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T1.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A4_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T1.js index 3c995e5560..ac9b0604fd 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A4_T1", +id: "S13.0_A4_T1", -path: "13_Function_Definition\S13_A4_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A4_T1.js", assertion: "The production FunctionDeclaration: \"function Identifier ( FormalParameterList_opt ) { FunctionBody }\" is processed by function declarations", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T2.js similarity index 92% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A4_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T2.js index 974c0a68f4..0fb0ab7aac 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A4_T2", +id: "S13.0_A4_T2", -path: "13_Function_Definition\S13_A4_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A4_T2.js", assertion: "The production FunctionDeclaration: \"function Identifier ( FormalParameterList_opt ) { FunctionBody }\" is processed by function declarations", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T3.js similarity index 92% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A4_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T3.js index 498f128f94..3eace539e8 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T3.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A4_T3", +id: "S13.0_A4_T3", -path: "13_Function_Definition\S13_A4_T3.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A4_T3.js", assertion: "The production FunctionDeclaration: \"function Identifier ( FormalParameterList_opt ) { FunctionBody }\" is processed by function declarations", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T4.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T4.js similarity index 94% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A4_T4.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T4.js index 752f2275f7..0b1b8c522f 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A4_T4.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A4_T4.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A4_T4", +id: "S13.0_A4_T4", -path: "13_Function_Definition\S13_A4_T4.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A4_T4.js", assertion: "The production FunctionDeclaration: \"function Identifier ( FormalParameterList_opt ) { FunctionBody }\" is processed by function declarations", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A5.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A5.js similarity index 94% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A5.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A5.js index 948d844b9a..2a633e9fc0 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A5.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A5.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A5", +id: "S13.0_A5", -path: "13_Function_Definition\S13_A5.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A5.js", assertion: "Only FormalParameterList as arguments list is allowed", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A6_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A6_T1.js similarity index 90% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A6_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A6_T1.js index 46135dc291..c5a47e61fd 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A6_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A6_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A6_T1", +id: "S13.0_A6_T1", -path: "13_Function_Definition\S13_A6_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A6_T1.js", assertion: "FunctionDeclaration can be overrided by other FunctionDeclaration with the same Identifier", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A6_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A6_T2.js similarity index 91% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A6_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A6_T2.js index b0abf64dab..4032e82ca8 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A6_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A6_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A6_T2", +id: "S13.0_A6_T2", -path: "13_Function_Definition\S13_A6_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A6_T2.js", assertion: "FunctionDeclaration can be overrided by other FunctionDeclaration with the same Identifier", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A7_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T1.js similarity index 94% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A7_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T1.js index bd18503e20..9ac3a942b6 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A7_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A7_T1", +id: "S13.0_A7_T1", -path: "13_Function_Definition\S13_A7_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A7_T1.js", assertion: "The FunctionBody must be SourceElements", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A7_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T2.js similarity index 93% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A7_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T2.js index 695050e6d0..fb6bf30427 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A7_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A7_T2", +id: "S13.0_A7_T2", -path: "13_Function_Definition\S13_A7_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A7_T2.js", assertion: "The FunctionBody must be SourceElements", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A7_T3.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T3.js similarity index 100% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A7_T3.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A7_T3.js diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A8_T1.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A8_T1.js similarity index 92% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A8_T1.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A8_T1.js index 967b6b2bd4..4d7e971add 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A8_T1.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A8_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A8_T1", +id: "S13.0_A8_T1", -path: "13_Function_Definition\S13_A8_T1.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A8_T1.js", assertion: "Arguments property of activation object contains real params to be passed", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A8_T2.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A8_T2.js similarity index 92% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A8_T2.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A8_T2.js index edca44fe51..2aa5028591 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A8_T2.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A8_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A8_T2", +id: "S13.0_A8_T2", -path: "13_Function_Definition\S13_A8_T2.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A8_T2.js", assertion: "Arguments property of activation object contains real params to be passed", diff --git a/test/suite/sputnik_converted/13_Function_Definition/S13_A9.js b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A9.js similarity index 89% rename from test/suite/sputnik_converted/13_Function_Definition/S13_A9.js rename to test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A9.js index 97e973786c..a3d641ea30 100644 --- a/test/suite/sputnik_converted/13_Function_Definition/S13_A9.js +++ b/test/suite/sputnik_converted/13_Function_Definition/13.0_Chapter/S13.0_A9.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S13_A9", +id: "S13.0_A9", -path: "13_Function_Definition\S13_A9.js", +path: "13_Function_Definition\13.0_Chapter\S13.0_A9.js", assertion: "Function can be passed as argument", diff --git a/test/suite/sputnik_converted/14_Program/S14_A1.js b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A1.js similarity index 92% rename from test/suite/sputnik_converted/14_Program/S14_A1.js rename to test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A1.js index bb7662f082..bad1dd6b9d 100644 --- a/test/suite/sputnik_converted/14_Program/S14_A1.js +++ b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S14_A1", +id: "S14.0_A1", -path: "14_Program\S14_A1.js", +path: "14_Program\14.0_Chapter\S14.0_A1.js", assertion: "FunctionExpression must be localed in a reacheable fragment of the program", diff --git a/test/suite/sputnik_converted/14_Program/S14_A2.js b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A2.js similarity index 91% rename from test/suite/sputnik_converted/14_Program/S14_A2.js rename to test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A2.js index 92c3e231e3..d91281be2e 100644 --- a/test/suite/sputnik_converted/14_Program/S14_A2.js +++ b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S14_A2", +id: "S14.0_A2", -path: "14_Program\S14_A2.js", +path: "14_Program\14.0_Chapter\S14.0_A2.js", assertion: "FunctionDeclaration cannot be localed inside an Expression", diff --git a/test/suite/sputnik_converted/14_Program/S14_A3.js b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A3.js similarity index 92% rename from test/suite/sputnik_converted/14_Program/S14_A3.js rename to test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A3.js index 50dba470ed..e3b3d24641 100644 --- a/test/suite/sputnik_converted/14_Program/S14_A3.js +++ b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A3.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S14_A3", +id: "S14.0_A3", -path: "14_Program\S14_A3.js", +path: "14_Program\14.0_Chapter\S14.0_A3.js", assertion: "Global FunctionDeclaration cannot be defined within the body of another FunctionDeclaration", diff --git a/test/suite/sputnik_converted/14_Program/S14_A5_T1.js b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A5_T1.js similarity index 91% rename from test/suite/sputnik_converted/14_Program/S14_A5_T1.js rename to test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A5_T1.js index d0f6a52f1e..ba449abfc0 100644 --- a/test/suite/sputnik_converted/14_Program/S14_A5_T1.js +++ b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A5_T1.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S14_A5_T1", +id: "S14.0_A5_T1", -path: "14_Program\S14_A5_T1.js", +path: "14_Program\14.0_Chapter\S14.0_A5_T1.js", assertion: "The Identifer within a FunctionDeclaration can be written in both letters and unicode", diff --git a/test/suite/sputnik_converted/14_Program/S14_A5_T2.js b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A5_T2.js similarity index 91% rename from test/suite/sputnik_converted/14_Program/S14_A5_T2.js rename to test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A5_T2.js index e2ec24467a..f8d13791c8 100644 --- a/test/suite/sputnik_converted/14_Program/S14_A5_T2.js +++ b/test/suite/sputnik_converted/14_Program/14.0_Chapter/S14.0_A5_T2.js @@ -12,9 +12,9 @@ // Converted for Test262 from original Sputnik source ES5Harness.registerTest( { -id: "S14_A5_T2", +id: "S14.0_A5_T2", -path: "14_Program\S14_A5_T2.js", +path: "14_Program\14.0_Chapter\S14.0_A5_T2.js", assertion: "The Identifer within a FunctionDeclaration can be written in both letters and unicode", diff --git a/tools/SputnikConverter/SputnikTestCase.cs b/tools/SputnikConverter/SputnikTestCase.cs index af9621bc39..4f0f2e4c28 100644 --- a/tools/SputnikConverter/SputnikTestCase.cs +++ b/tools/SputnikConverter/SputnikTestCase.cs @@ -251,7 +251,13 @@ namespace Microsoft.Sputnik.Interop.ParserEngine int indexOfRoot = this.FullPath.IndexOf(root, StringComparison.InvariantCulture) + root.Length + 1; this.pathFromRoot = this.FullPath.Substring(indexOfRoot, this.FullPath.Length - indexOfRoot); - + Regex regx = new Regex("\\\\S([0-9]+)_([^\\\\]+)\\.js$"); + if (regx.IsMatch(this.pathFromRoot)) + { + Match tempMatch = regx.Match(this.pathFromRoot); + String tempDir = "\\" + tempMatch.Groups[1].Value + ".0_Chapter"; + this.pathFromRoot = regx.Replace(this.pathFromRoot, tempDir + "\\S$1.0_$2.js"); + } ReadSimpleTestCase(fullFile); } @@ -290,11 +296,11 @@ namespace Microsoft.Sputnik.Interop.ParserEngine if (commentKey.Contains(ResourceClass.LookFor_Name)) { this.id = this.pathFromRoot.Substring(this.pathFromRoot.LastIndexOf("\\") + 1); - this.id = GetRealId(this.id.Remove(this.id.Length - 3)); + this.id = this.id.Remove(this.id.Length - 3); } if (commentKey.Contains(ResourceClass.LookFor_Section)) { - this.path = GetRealSectionName(this.pathFromRoot); + this.path = this.pathFromRoot; } if (commentKey.Contains(ResourceClass.LookFor_Assertion)) { @@ -317,22 +323,5 @@ namespace Microsoft.Sputnik.Interop.ParserEngine this.PossibleChecksCount = 1; } - - - - private static string GetRealId(string id) - { - Regex regx = new Regex("^ S([0-9]+)_"); - return regx.Replace(id, " S$1.0_", 1); - } - private static string GetRealSectionName(string sectionName) - { - Regex regx = new Regex("^ ([0-9]+)$"); - if (! regx.IsMatch(sectionName)) { - return sectionName; - } - - return regx.Replace(sectionName, " $1.0", 1); - } } } diff --git a/tools/SputnikConverter/bin/Debug/Microsoft.Sputnik.Interop.ParserEngine.exe b/tools/SputnikConverter/bin/Debug/Microsoft.Sputnik.Interop.ParserEngine.exe index cf1ac1444201533a680632dce4a3312f394af457..bd47f09850ada32228119486a77db84aea6408be 100644 GIT binary patch delta 4439 zcmZ`-3vg7`8UD|`yLWf*?%v&dZ^$N)CwXu~*qDT%35b|LUP6QrBt#w|#mG}GY!X_F zu)9=zRJ5iS7;(n(=wq6qwz?gyXbbeAsI5lFib`$Aj*rq21$C-ewEfQ6giy!cnf=cH zKL0uA|Igjs#8WKs6ub8h>E4Zl-_2urgF~I#37e>c@Fa*TmBB(YaDXTPz6OdMr*PpE zr;ANu#ZHpN3uzM+cv|q0$W4i>h<;f~B!iz#q#R2XO7Hnf+>9tlq*K=2#YD{X=$_12 z(nXsN>7GbzXPR)Lfjrr(d!1_ot?}5M5cXY7q?#_>C2bu?^Q_$6E{($Q5Ri_o#f&|Zq*Ff#^aOZu@Fn4$yf_H2Ld_q zn?Pth@yOjXc;Z1ln3+HQ0X?W@3qi?nE*vc^U-fS<0|sK}E=^pv)5%G4CQ@sK0fuWZ zEU{++w;Aw`dEBE*Rdhw#%4KOck253ak8`iIbp|w&{MA5nc_5Pq(h-PnPI}*bx^E=d zJXn}2>8jnvDXn%X&O_JiYr*wj!Pn&{-7mH);Pu$^A-2l_N|wEV;-m(BnfKe(+%=#F zEaa!y?cn%Pg!E9fk)-qirBNJ&y$}YGB{omaviPP-k~Ilq8g0~xn%!li&_>jR$T)=m zjU0m4IC1t?1&_gv!otY8M~h_eM6H@ph5i)<5>9(y+Yr`yLd(m#H0@l%vaAv1hgzn( z2;umGrtfh=p(v8A&*4=~^a?&PY*`Z+oVR!;RJ!Q3DlzEZ;` z>Zqmk)-H37=sA()FpGL6dnU}v-J+O-K5MyiMxPdV2C=OI?jP%SDvZ49y~?OSviYgT z9^--)2r*g|8I&$Qs~bYHRyx~_D|8g1a!3!4m+UG~nbth#X`_t&$~kL{Z|i}b-)k+y zz-!pzdnn3_Gv5GHDwcpXk?!-@xJOXYK6};3cmp5B9z~W|O-`p-Ii(jOQ`Obj(@1V4 z&-Zzr{5G&}1e8Mg5hV7FPReX5L1QYWUsrX1rtZ(*X0PUUyia5Q;%?`~Q#DMXJbEBxY^k=4t*WkfoDR z*Jh;b1eGmC9;)@8QL{U#6Y@!4W5 zZ}7x^a?!lJ#uIyRj4SoT9v$PdJh5YAoXR6OUt~^DUJybjFEXBGICYU4_KLGH60vY6 zDubB6r!IxuNO=zSpW`3;wHfjOcU|J62&{S7$bI#GMtja_V`KP z^FD?Cq8>uyt@n5N71|+izrf!JJSp(3K!1SSlnPuCm=!>~3QP#eK7qr5#~{BDI34Ju zFy6@u%?joR73v16v?sU?^n=0Euz5Bv6rTk7^ydZUYF&PnI<%RZN*jP0?bVW?pVJO& z*s&0|)CJ~;?sh9QMc|bJ+l73!K-4HE>=X9>XBA`Mub#8gPz~ee!<*=Y%1*#+)+@`{qU>FoP zc3~FB;Ilj+Fl8LN8qWU_Or^;KHJDu8CUCL99)Y(24LWSzX&Usj$pd{XW zJHD5Jp9+azy#t;P>8n%C#UY8sQ=O%87OzCf5hdwiZyPr5M3i%bbj0^ZiqNf>aqhM( zjTw|hy9Bq_J5GHS+z&^%a`g>x52iV)SO125Gp2ICz0{<(P!1(VxP{PJ*SwbRnN1JF&RHEAv@9$HCg87%a-D#sI-;4o;3P72AT zblURkFg_OO>(pP>o)r_E7ZZFbFg;n?*W>5YbFEAoXhwOL;ABBxIfCJ^L|6IoE?_j* ziI*kgZwIeoZ;@YH04&uynNAv82AryGV&_3`Wj^*-Z8y`|2ipD2N1tlDDVzC1`&l;o z6p})g75XtNW5vKKRuwwT>R5BAjq2Ib&~9o4-9lXQEaZPi=@qiuLbcSx_~90^qj4Ao zFpWWF?DwHFv=)jss$!=@XV_+@gg*kB;oUIJ5m+4lj3rr3_)EyI3f~W$3weMRhh=Fq zyFPp$EW5*gX;8%3$L@mm;K;;}hV!LDb|icdHh&0Dk{*Fgyp0}VpM;}eE`+P4Czzqv zNyo9)S<*|aT;~&Kg_@w9rngC_*=c<}SzP)_YUY4@i69%WBH%hTL zuNY^L$~(pxZ1~5<2U070(cK~}S3=$${zS@_g66-aI+lyhu46^ODzUFsRAx#tpWZ9i zW6E;55c13AIz(urc$Xwh*&4G+uA(jGJh_MGMQefW@@DA`vs3Pp-Zi^rzNMGTH$&b= zNnx`O8-5U1MlfTu2)9Mn(3CgeS4a+RMoI1@#>(gv?O+wSRBm@w&;&XnSI~E8J7|;c zkt?R7sko?I;8ZTcOZ^ydwvcoPTuQG&vYsTk^-&18l?I%lDUIe~=>naWIhMINwz>{G zEZQ9EkbWS&CI#i0@(uD<`A%nP^pVzyz9-SZCBCD;D+M+S$vofhAn6wLdVvGJXCS#n z&^rb05jI1D{zdA#ikVDnq;_;s6YyPTl{*J6Tfmaexy#I=T_HH5#l{{+!$QU-;+2`2 zRQa4YrPVb{sh%0nxShA_OIlj{+Isp|t)VnF$LxVkv+WHVdRO(YwKvl0-u`YO>mxDH z?4C{i1F>GASlqK=pqCc*ZraeZs@IuRUs7CMKW*yNnySX=<#kuoMQa+X8>01dsw<<_ z)s40Fjg^&kP4!jIruu#-(y-LIrJ+3ac*6?CHFX&+a|T<-wOO>3RuDK^j-x5VSV8Ns z^~J(EdNw;JqUhZjgidnHuo8jAWIOoaUUH zZ@Ok0$@-LcfyJWtZu~jE@TGs(eGB6P8=rQfg&lJ`yv3cbpXnKHetc-?*sXh>zlJ%> r+gE94VKMq>o17Qg$E%}%dl04m*`6V#v_+qLq=L$nzU)IbSn2sMM?4=V delta 4541 zcmbtXdvH|M8UN0`n|pWf?%v&dH_0X>A&Gf#L$V=(1QIAp0wGx>gb)xgydp%1AQv`q zV1%#c&VeJRZ_L0Q(u8f2esPiv}%1(wGN|}sXB5d7V$LRN%Lo}-y#v|JU+Z{GLQEg{?zQL z_ZfaIT^I`9%p!7GGl(?rjv}Bhwg*W&YasH$WE;t}P?9948cFs{$au`cV~KqQu-im* z?0ym9-0#nhb4J3G438vV8ic87-60-y7(pSo;Z6+YF+9>Xp3I&NMo1$=v+KE}SG6?Uq?a~@Gs7iJd(x2S}0cO2r(## z&Ivu7%nP$BMjXZ^4iuP3jb%b=XIx-x)rDnd5vE}!oJb@}cS~WbM8xs+Xc{(8-RpD* zBJr9`evXLV#&Tr?I^fFFbyOB&u^O_5?5P{Q_n~T&~P1#xma=+oW@;JfDxY%#u zyeJ``>AQr+(+tO2S0OXohBv$0Zs$CHS;YRq!*WN%c3@{*$>-R}Y<23q#<@H> zoGg-(aN`=l$;CKMNAm5g&KXM1i{tt*ND|Y)ar8i32}&Va@_aYjyo-0>gt)|jX=$C; z!k{UgYw_@^F_(&Z*Fh%L7L!*Kb64yRZXEy7|IX$dO!3dXj&bKK!EBLNz#iS$>N#sQv;o8AO zJ2!);b;fwS%-0GxeZ;56c8*S=>KTlRYorqtpF1V7qMVgf^$;9xtILU{HpFk>qe){RcvW|^XRk3v;S1}o` z@f32GNrXP3RHr6fG2?mAdief~5go4KAiFUK3)h;`uY@i2ypm?2BS$>xR+3N#j)uQ* zPoIk`EpG?WF+7)H-Sb+yVjUaTVj-{%`9z-~P2M6Lc-)(~(I~HeQFIobLFf-UALfiJ zz`7F#7I!7CK|&B=fy8^5%h(1~9La5tf9pBzQD{i(M+YD9?({13n823=ekzcB+@3D5 zLSU1?TYc+%3LO-9SXllbaL9KG_5#1@Urg0_&nvXf-{4nhH&CPJ{SQNa2VRA~jtfVY z&WFED;B0-TSEKFvwYo;X0P6I6{ZYu@=x^%^6$LnRs=$W8z9fYf32Ya5qpGJ0bY^K z&TsO1BY$^SVcXBTcLK9KRp`O@Jv(_PYVQJ*HEyxA-H2RgOdV*=4@m5hf%S!P7C*+j zmwM@OcOw>SNrY>C^rHJXg=yEY_7`Yr^unc2(C&0k)ZT-3 za9C^5PC_aUzD7@$RVK9O;LE2~2`%lBz$z+$gV8CC<0lv3AY_TY6_)dIe1w_^_Kxa%*#79qC}V=ySuS|N8i>x+8heti!6kSg@~z$Se$ zGe~F4fXnnvYzXo;=3#2!05e!Pa1ZlPPT&Bgvx$NGSvt#sC70C%9%4nT5m?Ty4m`%H z*``1v)v#S)MjEE@iU(zBGrK8x7nr+)Ua3#yxtkq<_t5ab z?*+4^T=sGB5ICO)$4M`;2aWjU(n&!*$xa##(i!%tafr^0lA7RU=0fQ!W|^(h5Swha zfm3Vpf=&n8k#4TJ9=O2l1h$%6foshsFgKca(Mh(&{53Mf;bjt^q(|Zt^GHvd&q?VL z)-o=Z=+9C*dl5;a>@BkpEAhUGBgzKNK`ih0=EqW$y^+))n5$sl9Xum>q?FK?QZ*|; zzgM$jV7XXDz8(LO%BehbP88&l%Q5gcITzlEay9ZaQdAOrwkcFA$IEF)s6lQP)hz`! z%5Bm|p%ytReI9C+`7%zFJGh-T3(nnG0+{uW?qB8SedjL2X-GZRz&a7 zPF9Kw=O$Mvn)J7FDcwXjLJrYwkn@D4m}4nT5~gYNEF3e1qeWmVy$#EHItT0|FM_wx zX6H~zUC5DspffVZA{WP~%W;NE>O&E!TY6kND!nFoAGjE?tb=?qacQR|2dDgaft-Pvj!wv1umfDiQg7!@t+E%wy zv{Nt#`fFDzPDiwBfs7yB=__z`wva`wR7Mf1rsY&jMYNJwfZOwN?n>do@6Rx2UdqcS z=FJ&p(ZC1M`=sES%I-bCdN{4_cROBPS+T7(%lY}-pO((J7s2+p@yq`UBmMt(*le7EA;VB?Fwo(o!Lwfyqzgdbdc=QKQX zWZv@A%eRb`oc89`=4miSKIgcc)0dkneQ6JT*PJXlGgxpyU-+FW1C^r=3{`79|0X;_!;D9Kt;hE1;IZOwfrjs1vHH`b<@&fG@obv zYnS0@xsa)Cn_4EqXkz$VThW@EZtk=CSZlfcS#IfWZR_U7zUSiuq37BAJm@$Qu`MC)FN)X}+CW5Af`milB&Df4^ZH(ju? z2O%zylI#fB-o7YXV~xS4SlgL_hdQxxQc^mDzj7}+MB#(3H>4$)i-ZW7-M=d+Wi&cy zY?>0xg22qdbEQnABhFMyF^sA;Be9$^8zU&l?J^_^GeQ+nw%e&62a{Tw<&IZsHN!ZO zpje@|(b`G}?Q$EXjrO_Y>7gZNy5P29^qJcUZpvVuq4M%1=RoX0;Vp2Rx1{PZM)nl~ zw2?n49@Z^MPUSR$bE=}DGpf4JGMvgaO*$A-lPZlGl9@Utw97UU(ta%M6=V54Ay|%O z!~Y}64*1`g>`^i;cjjO^bkb#~kCSc6J-syOs+vMWn4v2h#V)751ld?kwJw*kTC?RH z@M%)iY#ehLY1L+PXwCAj*t`#gKFZ8D#425024*?+rSNi@in9uPGQBa&X&w)$9f{>R zl;4y<7qe_iw}8V0K@mokP6yetjnv^bQ)0GF3G2P(>SZF5WQLt)rVi-|`E;sNk3$$z zMu$^fvWz~;F7FAPm*dn=gl-PqpOdM~(ZX{yKI3*eUl$|wwAE#d7FdeYD&#-H(geLE-8l7`2u^xh+I=wVx<^K{?&GxGNQ^{3SP9?`z~b z&~*P!@Neg04|AVadn>`M6%n-N0rq9BSPULt8A0_Gzfya@1%I=W{Vkuj9K3T;1l^v; zE8yPV`P{p!idVp1Zdb9FUsv-i_EK6i6}_e!oQ6gF zq^T8S4VN1*ACFDgg(DKbDEO2>2YY%B`abJ+-`n{^J#TC^~U3kjcQ zJnTIMXj%1wRS=;-1SuDxxK6tld8T!biV$HMw4J>o=zr#6MRo1c$(1YSFNB;Ua2e|z zf%QcXE+eZeQVwkD1wMzHDiqQa&1kZZAqIUIsxOZj7T**93T=DE@{)sn(;pg;Uf$? zfxiQO^X*T*eL!T;_c8JLdFtTUkg_!rHmV{9Fggo$fsw%b z>d+a04(C1!xDpr*tOv#dUjfDeTY>Swc3=YV55U2|Ga6n1aw0Bi<1c_t=)VLe0&f75 zfV^=R5Q`Kkz&bcpC&E~yLI7it1}p`p0~Y|@z=gmJ;A21z^aOAS#!mt>ft!I@z%9UR z;0_?$?FQyx`~uJed<~cjJOa#@AlpR(M`7#$-UUq7loYF!dJD9Iw6|e~M zhk(VD|9EZ07@UtVP$`niPhyye5FToO{1?i17#l&KvjXiPDQgb-i>|ajS;G~IE8Lp8 z*K~=3maYq@Qr{*SOCR9+6-K{Y`vv%tbvq%kKE=HGDK0!S)~CwJw03EhKt9lR(0}~4_CHC$d17GTNdj=+7R(Q z?4XfipEv54!ea`B);m)#VaGTWVx#8bJbnothiVtDvzW)@vox!ISk#}jiuk=|CE-W4 zrj~kFwjMt=kE&4!8INK&jDxgUM>SucLCEs8r1%|*)K-wM&6-SJf99Z9HEFrFu1mPb z@tkX#m7n|@ULXcS;HtLLYwj%E$kz7x*^lFRx`?@n+D)jx<0{W!YPDR@$;o9oo7VV#+ zr}&*p;Pke|QqP|)$0+;RuS2(B{&vudpo5gUy(DxiPQ@x4ap2o3cYMdf-X?EjCnMcnwrpux9Mx#d#qkn-9r?jRLnNQ1_ zJhGBrY8ol$(bcB8fvk{Ivi12Wot#h6yN2j;s{<2ut?Ms+boLde`dSMTSwpkXaesoKdALWYzh}k9*w{cumVS^!$5Hdiz2NeJe*U5CsR9h z71KWGPfJ@eY0trtk&5WRM!01m3GC&Hx)p~Z5Tp3+!!WvA z&u`v>fGbvgJ>8Ldd-M|5`nteyoA0lErlrt3fw4iU!c8{=F_d!1n&#`C!n>>hyWpjd zhE^SpiSuno-tMenZnuB+S7?PS?cllU)opv5!z#jS1hTD~9-i6F1BF{mA>b@?*RgV%qUk73|Xd)z} zr?H4X^tH1quo_>t5+_Ym)A8dm`TR9+(Wb$or?F@Lwyn@4!D32pow!WOi5NY9J&mN( z$0H2og1?(W(RbwY=VO0uMSY_R!JmACdwllI=?2#TfN}DqqHzSdPQ5!0fd7uyp@wm(&VGB`H_o5bz#+m*Uo8|n? v0)^0yw_@bXz*?h0CQX2V%Rwn2vle77sBg6jyTAaf4 delta 5674 zcmbtY2~?EV6@G7E1_oweewblZ7#(0>SOx?U1XNTOH6j|LprD{)w29(^f+i_oaul^D zz)h@)XBsFlHN+J-bar){=sYSW}AX0eTCvDs?c=ETH)_n#j^a?*2}=AHT8_uhTW zeeb^emib$*>slW6X^&H+5aL$gEGH0_dPW&ukmj~vEiXjGCmyN$hcu<9e|S0K42 zI}O$Vo49eq7tMTHJktM?>!E)rC(#@9nw_g5fQRk(zx&_8lg-4;R)Nl@+kt8d&=`E?ta z?LEE)lYI8jS^Heyzl>h}Hd#kq?F_5%RE%CEWg3eVhSd#y5m}N|*i;oz!(p_rD{Q6^njP;L86t$DiV-cTU$%+UF{ohxhfqg+ ztPG)3@s5H=OkOonDD&sCVeOW!TvuM(utJ0hALThVwH8jp`W#M^5*1E~3HGE|v$vNp z^b&xQ;k~S1BG7|f!F-^3Z9+ISZ%@cnOhMnYL35NzXDGd$U{S^lD?w5%De$xUVW^^* zikuETmeo)}tDH`yLaWPj)1f?+S}Viptka*ayG-Wg>%F?!kfC(Z=}@9CrOR|=yUX8p zZolz@)RAJpQNZg^fjXCg$$%X->cE46+gpcOW_{f{bxy3&N;8vk{SGPK(d|ld=;3gN zWICPXl*x24$%w&p>+=EXy6PVROa`NTQ>5{0+l zj5voLj%_HT%D7miOsmMV4#pTl)LHM3^M`G_<6d!oZM1JY|+uaw(ir`HlK=0O1)-G@F+jwVZzzqC?hQgq}Ga}Kxa z9Bw$r>>;&dT@L+BsLiKpms`olsdH-sBm&Rf}rg%71qTqbFw zuUz4gwqZ`%*sxArICfGSr6xzC&a~vhAy@54cIeBXv4oyXPF6~=sRuPOhf%E~oJ=YH zGK_2~(}r5rr8x9BK@BTuS4ym0Nyk%WM`%t8sZJQgXK0-do+v2o%kGpqn;-2jw$jmYoj64I72BvhXC6{rInN@#E%yv! z=Xj3)I^Ki$=Xo5@$bTHMPr*sV9yJc0XrrbHyO9r`*n{}YM6R)Z64!7PavQF3wUBGv zJ(;DMQ@F;5Q#ieMD#u)-rig3sI84Rf5p^M7Qo`l`Qsb^tPS2l)*yA_dXe7(REfCPc zRef_G;!|PoE&C9EJP%Wu_lTNmL>ydUqdVtwm%$acA&#xIQG3O`YU&W;XDhke^$XS` zzOsO)KnppZSj7Y2*4L}J^?lV`n_HJInuFBdMci)2VvfIDycC04T$3m5-cvV0TiP_? zQg0Q1K6DV;1wB=p5P1P>*^cZyxa6P@vDcdE;!>~Inh9P@=}T4^`7(J8d;J{!YDp%o z80Vsm%YzcfYaN?#b8u*6r`19slwa0*rt=4^A>4%tBX|vC;fj|Ho|l&f>4Hijy8zi{ zjNvIi`k*c$Xc@BSfcX%;S}MFwv4Y2 zAH{s5`Xe_xo-1b2ZLrCoLzq?cP>Plm(+L)^xp9u zy*Jk_ZCF{qx~z6povQyFbhn@_w;QZGsNbTV3~VloYU6=8>)y}nvI0vc`UTBfz1(;Mz2C<&($|j-cL}2iP&e^4)wXOBDH>^QeQ2|v6fHbye=yt7 z2#x~>fL&lSI2#-Uo&>gl`JEO5UI7jTH-fETc9<}54>$tc2aW`v0Y`zK2af>1pz#GE zn#D&Sf8FxBCb$9~i3;z5W5Az)W5K={;V3W$Ax48CQ`X~$CM%V0+#wIqA2)jN zFxb|31#x}TK1hN$aeQ(UAHwrDC&^jVx;Ynz?3vAlzQwnr*A`$8@C0xUxC;2f0q>PRZmX1-nP=R8(g zow;U-NZ6S3)l|84oGv4Xc5IE2o2YxMGxrv)r~~C(r4CmX^OI~W@F0O_CKu=Iymp=?dZY5;b}L=SWVtavdxXv%V-M^ z$km4SlB79p6O>l1$%ERMF4BQEca&Zm*#>R=-5Sdv`k*aFeon^i^L57sE!jRVBttW& zUgLKJJ-9W3d_;P7Izm zf)()|pM!l;E~m#1CCe--I~H#cFT+_CI&~~u{}xigoTA=i<8*l3f7KJ++2f*s-XO~9 zNv6PFGp*@C$!d~4(ezwTcAO9o!uGtW8jTrzB|(YU5i068TH(tLEbyn8!&Ae8gq2TY z1e3PE#81*qwB}Jabsf$Nvxwip{v6WLAMb*iNm{Y<(af-5@r3p&s?c`j{*`L+>M%uI zWi1G6G%wvh*wS$%Gt4YZ_#4cjLesm(+tN*YkK9Br95M5E0ue~h90?~&SF}!4QEOK; zm2$FOO}2Dl%5SR43tic;Q3}-_jUwk!3)LSr=|qj1U3?T5?){w9i4&^C!;(v0$#qrY z*Bwm1?lzO7JB6O^M$=_1YeR2Cx37u;aoS)}wkGH|itjz%xApJ^nXzINOaut*g)$ZN33Bp8i9 zlyPU=!;k(@M)sY)`h0Ykpn8)1STLPAW~TgOLG%<*aV+}Bxf~9KFMCobxW_Edu!G9q zvNOtyYWjUz3&%X%i?#b&_0czaRrl5N!?vAdZ@Bs=p;1Q@dcySl1c_mxo}UtFoWiL% z^LVtLzrqC4#pB_6{@UWtDOpAbjz<{;e@CcM1!w7XRONr9d1~HG%86(L|0xfY^ycv} zJ^x!Ctro4Mx)aIrG#3TQ9U-#WPz4Y<^vg-G$8)G~p`u-*re(cl$ z-|~az@AH8b-|+$VF7_ApgIa)hWCfspHU(D$i-5&I4S<;o%$7fT33fmq&0OGL}kECpd6SD%mHo&<^s0>^MLt4NJk-#SdV<{hTnex Dy}Y*o diff --git a/website/resources/scripts/testcases/13_Function_Definition.json b/website/resources/scripts/testcases/13_Function_Definition.json index 7a6084296a..17d338a460 100644 --- a/website/resources/scripts/testcases/13_Function_Definition.json +++ b/website/resources/scripts/testcases/13_Function_Definition.json @@ -1 +1 @@ -{"testsCollection":{"name":"Chapter - 13_Function_Definition","numTests":"107","tests":[{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0ExLmpzIiwKCmFzc2VydGlvbjogIlwieD1mdW5jdGlvbiB5KCl7fVwiIHN0YXRlbWVudCBkb2VzIG5vdCBzdG9yZSBhIHJlZmVyZW5jZSB0byB0aGUgbmV3IGZ1bmN0aW9uIGluIHRoZSB2YXJhaWJsZSB5KElkZW50aWZpZXIpIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgdGhlIHR5cGUgb2YgeSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uIF9fZXhwX19mdW5jKCl7cmV0dXJuIDA7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIF9fZXhwX19mdW5jICE9PSAidW5kZWZpbmVkIil7CiAgICAkRVJST1IoJyMyOiB0eXBlb2YgX19leHBfX2Z1bmMgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IHR5cGVvZiBfX2V4cF9fZnVuYyA9PT0nK3R5cGVvZiBfX2V4cF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEwIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTAuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb24gaXMgYSBkYXRhIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgZnVuY3Rpb24gYXMgYSBwcm9wZXJ0eSBvZiBhbiBvYmplY3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9femlnZ3lfX2Z1bmMoKXtyZXR1cm4gInppZ2d5IHN0YXJkdXN0In0KCnZhciBfX211c2ljX2JveD17fTsKCl9fbXVzaWNfYm94LnppZ2d5ID0gX196aWdneV9fZnVuYzsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIwppZiAodHlwZW9mIF9fbXVzaWNfYm94LnppZ2d5ICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19tdXNpY19ib3guemlnZ3kgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fbXVzaWNfYm94LnppZ2d5ID09PScrdHlwZW9mIF9fbXVzaWNfYm94LnppZ2d5KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbXVzaWNfYm94LnppZ2d5KCkgIT09ICJ6aWdneSBzdGFyZHVzdCIpIHsKCSRFUlJPUignIzI6IF9fbXVzaWNfYm94LnppZ2d5KCkgPT09ICJ6aWdneSBzdGFyZHVzdCIuIEFjdHVhbDogX19tdXNpY19ib3guemlnZ3koKSA9PT0nK19fbXVzaWNfYm94LnppZ2d5KCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTExX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTFfVDEuanMiLAoKYXNzZXJ0aW9uOiAiU2luY2UgYXJndW1lbnRzIHByb3BlcnR5IGhhcyBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0sIG9ubHkgaXRzIGVsZW1lbnRzIGNhbiBiZSBkZWxldGVkIiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIHJlc3VsdCBvZiBcImRlbGV0ZSBhcmd1bWVudHNcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7IHJldHVybiBkZWxldGUgYXJndW1lbnRzO30KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygiQSIsIkIiLDEsMikpIHsKCSRFUlJPUignIzE6IGFyZ3VtZW50cyBwcm9wZXJ0eSBoYXMgYXR0cmlidXRlIHsgRG9udERlbGV0ZSB9Jyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A11_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTExX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTFfVDIuanMiLAoKYXNzZXJ0aW9uOiAiU2luY2UgYXJndW1lbnRzIHByb3BlcnR5IGhhcyBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0sIG9ubHkgaXRzIGVsZW1lbnRzIGNhbiBiZSBkZWxldGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdGhlIGFyZ3VtZW50cyBwcm9wZXJ0eSBmYWlscyBhbmQgdGhlbiByZXR1cm5pbmcgaXQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpeyAKICAgIGRlbGV0ZSBhcmd1bWVudHM7CiAgICByZXR1cm4gYXJndW1lbnRzOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jKCJBIiwiQiIsMSwyKSAhPT0gIm9iamVjdCIpIHsKCSRFUlJPUignIzE6IGFyZ3VtZW50cyBwcm9wZXJ0eSBoYXMgYXR0cmlidXRlIHsgRG9udERlbGV0ZSB9Jyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A11_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTExX1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTFfVDMuanMiLAoKYXNzZXJ0aW9uOiAiU2luY2UgYXJndW1lbnRzIHByb3BlcnR5IGhhcyBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0sIG9ubHkgaXRzIGVsZW1lbnRzIGNhbiBiZSBkZWxldGVkIiwKCmRlc2NyaXB0aW9uOiAiRGVsZXRpbmcgYXJndW1lbnRzW2ldIGFuZCByZXR1cm5pbmcgcmVzdWx0IG9mIHRoZSBvcGVyYXRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpewogICAgd2FzX2RlbD1mYWxzZTsKICAgIGZvciAoaT0wOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKQogICAgICAgd2FzX2RlbD0gd2FzX2RlbCB8fCBkZWxldGUgYXJndW1lbnRzW2ldOwogICAgcmV0dXJuIHdhc19kZWw7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCFfX2Z1bmMoIkEiLCJCIiwxLDIpKSB7CgkkRVJST1IoJyMxOiBTaW5jZSBhcmd1bWVudHMgcHJvcGVydHkgaGFzIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSBlbGVtZW50cyBvZiBhcmd1bWVudHMgY2FuIGJlIGRlbGV0ZWQnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A11_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTExX1Q0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTFfVDQuanMiLAoKYXNzZXJ0aW9uOiAiU2luY2UgYXJndW1lbnRzIHByb3BlcnR5IGhhcyBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0sIG9ubHkgaXRzIGVsZW1lbnRzIGNhbiBiZSBkZWxldGVkIiwKCmRlc2NyaXB0aW9uOiAiRGVsZXRpbmcgYXJndW1lbnRzW2ldIGFuZCBjaGVja2luZyB0aGUgdHlwZSBvZiBhcmd1bWVudHNbaV0iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpewogICAgaXNfdW5kZWY9dHJ1ZTsKICAgIGZvciAoaT0wOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKQogICAgewogICAgICAgIGRlbGV0ZSBhcmd1bWVudHNbaV07CiAgICAgICAgaXNfdW5kZWY9IGlzX3VuZGVmICYmICh0eXBlb2YgYXJndW1lbnRzW2ldID09PSAidW5kZWZpbmVkIik7CiAgICB9OyAgICAgICAKICAgIHJldHVybiBpc191bmRlZjsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCFfX2Z1bmMoIkEiLCJCIiwxLDIpKSB7CgkkRVJST1IoJyMxOiBTaW5jZSBhcmd1bWVudHMgcHJvcGVydHkgaGFzIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSwgYnV0IGVsZW1lbnRzIG9mIGFyZ3VtZW50cyBjYW4gYmUgZGVsZXRlZCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A11_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEyX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTJfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb24gZGVjbGFyYXRpb25zIGluIGdsb2JhbCBvciBmdW5jdGlvbiBzY29wZSBhcmUge0RvbnREZWxldGV9IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgYSBmdW5jdGlvbiB0aGF0IGlzIGRlY2xhcmVkIGluIGdsb2JhbCBzY29wZSBmYWlscyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgQUxJVkU9IkxldG92IGlzIGFsaXZlIgoKZnVuY3Rpb24gX19mdW5jKCl7CiAgICByZXR1cm4gQUxJVkU7Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChkZWxldGUgX19mdW5jKSB7CgkkRVJST1IoJyMxOiBkZWxldGUgX19mdW5jIHJldHVybmluZyBmYWxzZScpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCkgIT09IEFMSVZFKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMoKSA9PT0gQUxJVkUuIEFjdHVhbDogX19mdW5jKCkgPT09JytfX2Z1bmMoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A12_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEyX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTJfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb24gZGVjbGFyYXRpb25zIGluIGdsb2JhbCBvciBmdW5jdGlvbiBzY29wZSBhcmUge0RvbnREZWxldGV9IiwKCmRlc2NyaXB0aW9uOiAiQ2hlY2tpbmcgaWYgZGVsZXRpbmcgYSBmdW5jdGlvbiB0aGF0IGlzIGRlY2xhcmVkIGluIGZ1bmN0aW9uIHNjb3BlIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBBTElWRT0iTGV0b3YgaXMgYWxpdmUiCgpmdW5jdGlvbiBfX2NvbnQoKXsKCiAgICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgICAgICByZXR1cm4gQUxJVkU7CiAgICB9OwogICAgCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIC8vQ0hFQ0sjMQogICAgaWYgKGRlbGV0ZSBfX2Z1bmMpIHsKICAgIAkkRVJST1IoJyMxOiBkZWxldGUgX19mdW5jIHJldHVybmluZyBmYWxzZScpOwogICAgfQogICAgLy8KICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIC8vQ0hFQ0sjMgogICAgaWYgKF9fZnVuYygpICE9PSBBTElWRSkgewogICAgCSRFUlJPUignIzI6IF9fZnVuYygpID09PSBBTElWRS4gQWN0dWFsOiBfX2Z1bmMoKSA9PT0nK19fZnVuYygpKTsKICAgIH0KICAgIC8vCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KfTsKCl9fY29udCgpOwoKIH0KfSk7Cgo=","id":"S13_A12_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEzX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTNfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRGVsZXRpbmcgYXJndW1lbnRzW2ldIGxlYWRzIHRvIGJyZWFraW5nIHRoZSBjb25uZWN0aW9uIHRvIGxvY2FsIHJlZmVyZW5jZSIsCgpkZXNjcmlwdGlvbjogIkRlbGV0aW5nIGFyZ3VtZW50c1tpXSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKF9fYXJnKXsKICBkZWxldGUgYXJndW1lbnRzWzBdOwogIGlmIChhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCkgewogICAgJEVSUk9SKCcjMS4xOiBhcmd1bWVudHNbMF0gPT09IHVuZGVmaW5lZCcpOwogIH0KICByZXR1cm4gX19hcmc7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygxKSAhPT0gMSkgewoJJEVSUk9SKCcjMS4yOiBfX2Z1bmMoMSkgPT09IDEuIEFjdHVhbDogX19mdW5jKDEpID09PScrX19mdW5jKDEpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A13_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEzX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTNfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRGVsZXRpbmcgYXJndW1lbnRzW2ldIGxlYWRzIHRvIGJyZWFraW5nIHRoZSBjb25uZWN0aW9uIHRvIGxvY2FsIHJlZmVyZW5jZSIsCgpkZXNjcmlwdGlvbjogIkNoYW5naW5nIGFyZ3VtZW50cyB2YWx1ZSBhbmQgdGhlbiBkZWxldGluZyB0aGUgYXJndW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYyhfX2FyZyl7CiAgX19hcmcgPSAyOwogIGRlbGV0ZSBhcmd1bWVudHNbMF07CiAgaWYgKGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkKSB7CiAgICAkRVJST1IoJyMxLjE6IGFyZ3VtZW50c1swXSA9PT0gdW5kZWZpbmVkJyk7CiAgfQogIHJldHVybiBfX2FyZzsKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKDEpICE9PSAyKSB7CgkkRVJST1IoJyMxLjI6IF9fZnVuYygxKSA9PT0gMi4gQWN0dWFsOiBfX2Z1bmMoMSkgPT09JytfX2Z1bmMoMSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A13_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTEzX1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTNfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRGVsZXRpbmcgYXJndW1lbnRzW2ldIGxlYWRzIHRvIGJyZWFraW5nIHRoZSBjb25uZWN0aW9uIHRvIGxvY2FsIHJlZmVyZW5jZSIsCgpkZXNjcmlwdGlvbjogIkNoYW5naW5nIGFyZ3VtZW50IHZhbHVlLCBkZWxldGluZyB0aGUgYXJndW1lbnQgYW5kIHRoZW4gZGVmaW5pbmcgYSBuZXcgdmFsdWUgZm9yIGFyZ3VtZW50c1tpXSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKF9fYXJnKXsKICBfX2FyZyA9IDI7CiAgZGVsZXRlIGFyZ3VtZW50c1swXTsKICBpZiAoYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQpIHsKICAgICRFUlJPUignIzEuMTogYXJndW1lbnRzWzBdID09PSB1bmRlZmluZWQnKTsKICB9CiAgYXJndW1lbnRzWzBdID0gIkEiOwogIGlmIChhcmd1bWVudHNbMF0gIT09ICJBIikgewogICAgJEVSUk9SKCcjMS4yOiBhcmd1bWVudHNbMF0gPT09ICJBIicpOwogIH0KICByZXR1cm4gX19hcmc7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygxKSAhPT0gMikgewoJJEVSUk9SKCcjMS4zOiBfX2Z1bmMoMSkgPT09IDIuIEFjdHVhbDogX19mdW5jKDEpID09PScrX19mdW5jKDEpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A13_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTQuanMiLAoKYXNzZXJ0aW9uOiAiVW5pY29kZSBzeW1ib2xzIGluIGZ1bmN0aW9uIG5hbWUgYXJlIGFsbG93ZWQiLAoKZGVzY3JpcHRpb246ICJEZWZpbmluZyBmdW5jdGlvbiBuYW1lIHdpdGggdW5pY29kZSBzeW1ib2xzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBldmFsKCJmdW5jdGlvbiBfX2Z1bmNcdTAwNDEoX19hcmcpe3JldHVybiBfX2FyZzt9OyIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZnVuY0EgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHVuaWNvZGUgc3ltYm9scyBpbiBmdW5jdGlvbiBuYW1lIGFyZSBhbGxvd2VkJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE1X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTVfVDEuanMiLAoKYXNzZXJ0aW9uOiAiXCdcJ2FyZ3VtZW50c1wnXCcgdmFyaWFibGUgb3ZlcnJpZGVzIEFjdGl2YXRpb25PYmplY3QuYXJndW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcIl9fZnVuYyhhcmd1bWVudHMpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYyhhcmd1bWVudHMpewogICAgcmV0dXJuIGFyZ3VtZW50czsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYyg0MikgIT09IDQyKSB7CgkkRVJST1IoJyMxOiAiYXJndW1lbnRzIiB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A15_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE1X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTVfVDIuanMiLAoKYXNzZXJ0aW9uOiAiXCdcJ2FyZ3VtZW50c1wnXCcgdmFyaWFibGUgb3ZlcnJpZGVzIEFjdGl2YXRpb25PYmplY3QuYXJndW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiT3ZlcnJpZGluZyBhcmd1bWVudHMgd2l0aGluIGZ1bmN0aW9ucyBib2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBUSEVfQU5TV0VSPSJBbnN3ZXIgdG8gTGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgRXZlcnl0aGluZyI7CgpmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHZhciBhcmd1bWVudHMgPSBUSEVfQU5TV0VSOwogICAgcmV0dXJuIGFyZ3VtZW50czsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYyg0Miw0Miw0MikgIT09IFRIRV9BTlNXRVIpIHsKCSRFUlJPUignIzE6ICAiYXJndW1lbnRzIiB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A15_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE1X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTVfVDMuanMiLAoKYXNzZXJ0aW9uOiAiXCdcJ2FyZ3VtZW50c1wnXCcgdmFyaWFibGUgb3ZlcnJpZGVzIEFjdGl2YXRpb25PYmplY3QuYXJndW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgdmFyaWFibGUgbmFtZWQgd2l0aCBcImFyZ3VtZW50c1wiIHdpdGhvdXQgYSBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgVEhFX0FOU1dFUj0iQW5zd2VyIHRvIExpZmUsIHRoZSBVbml2ZXJzZSwgYW5kIEV2ZXJ5dGhpbmciOwoKdmFyIGFyZ3VtZW50cyA9IFRIRV9BTlNXRVI7CgpmdW5jdGlvbiBfX2Z1bmMoYXJndW1lbnRzKXsKICAgIHJldHVybiBhcmd1bWVudHM7CiAgICAKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMoKSAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMoKSA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYygpID09PScrdHlwZW9mIF9fZnVuYygpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIikgIT09ICJUaGUgVWx0aW1hdGUgUXVlc3Rpb24iKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMoIlRoZSBVbHRpbWF0ZSBRdWVzdGlvbiIpID09PSAiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIi4gQWN0dWFsOiBfX2Z1bmMoIlRoZSBVbHRpbWF0ZSBRdWVzdGlvbiIpPT09JytfX2Z1bmMoIlRoZSBVbHRpbWF0ZSBRdWVzdGlvbiIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A15_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE1X1Q0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTVfVDQuanMiLAoKYXNzZXJ0aW9uOiAiXCdcJ2FyZ3VtZW50c1wnXCcgdmFyaWFibGUgb3ZlcnJpZGVzIEFjdGl2YXRpb25PYmplY3QuYXJndW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgdmFyaWFibGUgbmFtZWQgd2l0aCBcImFyZ3VtZW50c1wiIGFuZCBmb2xsb3dpbmcgYSBcInJldHVyblwiIHN0YXRlbWVudCB3aXRoaW4gYSBmdW5jdGlvbiBib2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBUSEVfQU5TV0VSPSJBbnN3ZXIgdG8gTGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgRXZlcnl0aGluZyI7CgpmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHJldHVybiB0eXBlb2YgYXJndW1lbnRzOwogICAgdmFyIGFyZ3VtZW50cyA9IFRIRV9BTlNXRVI7Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoNDIsNDIsNDIpICE9PSAib2JqZWN0IikgewoJJEVSUk9SKCcjMTogX19mdW5jKDQyLDQyLDQyKSA9PT0gIm9iamVjdCIuIEFjdHVhbDogX19mdW5jKDQyLDQyLDQyKT09PScrX19mdW5jKDQyLDQyLDQyKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A15_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE1X1Q1IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTVfVDUuanMiLAoKYXNzZXJ0aW9uOiAiXCdcJ2FyZ3VtZW50c1wnXCcgdmFyaWFibGUgb3ZlcnJpZGVzIEFjdGl2YXRpb25PYmplY3QuYXJndW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgYSB2YXJpYWJsZSBuYW1lZCB3aXRoIFwiYXJndW1lbnRzXCIgd2l0aG91dCBhIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBUSEVfQU5TV0VSPSJBbnN3ZXIgdG8gTGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgRXZlcnl0aGluZyI7Cgp2YXIgYXJndW1lbnRzID0gVEhFX0FOU1dFUjsKCmZ1bmN0aW9uIF9fZnVuYygpewogICAgcmV0dXJuIGFyZ3VtZW50czsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCBfX2Z1bmMoKSA9PT0gVEhFX0FOU1dFUikgewoJJEVSUk9SKCcjMTogX19mdW5jKCkgIT09IFRIRV9BTlNXRVInKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIikgPT09ICJUaGUgVWx0aW1hdGUgUXVlc3Rpb24iKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMoIlRoZSBVbHRpbWF0ZSBRdWVzdGlvbiIpICE9PSAiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIicpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A15_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE2IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTYuanMiLAoKYXNzZXJ0aW9uOiAiQW55IHNlcGFyYXRvcnMgYXJlIGFkbWl0dGVkIGJldHdlZW4gZGVjbGFyYXRpb24gY2h1bmtzIiwKCmRlc2NyaXB0aW9uOiAiSW5zZXJ0aW5nIHNlcGFyYXRvcnMgYmV0d2VlbiBkZWNsYXJhdGlvbiBjaHVua3MiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uCngKKAopCnsKfQo7Cgp4KCk7CgpmdW5jdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7fTsKCnkoKTsKCmZ1bmN0aW9uCgp6CgooCgopCgp7CiAgICAKfQoKOwoKeigpOwoKZXZhbCgiZnVuY3Rpb25cdTAwMDlcdTIwMjl3KFx1MDAwQylcdTAwQTB7XHUwMDBEfTsiKTsKCncoKTsKCiB9Cn0pOwoK","id":"S13_A16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE3X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTdfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb24gY2FsbCBjYW5ub3QgYXBwZWFyIGluIHRoZSBwcm9ncmFtIGJlZm9yZSB0aGUgRnVuY3Rpb25FeHByZXNzaW9uIGFwcGVhcnMiLAoKZGVzY3JpcHRpb246ICJUcnlpbmcgdG8gY2FsbCBhIGZ1bmN0aW9uIGJlZm9yZSB0aGUgRnVuY3Rpb25FeHByZXNzaW9uIGFwcGVhcnMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgdmFyIF9fcmVzdWx0ID0gX19mdW5jKCk7CgkkRkFJTCgiIzEuMTogdmFyIF9fcmVzdWx0ID0gX19mdW5jKCkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24iKTsKfSBjYXRjaChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiBmdW5jIHNob3VsZCB0aHJvdyBhIFR5cGVFcnJvciAgQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX2Z1bmMgPSBmdW5jdGlvbiAoKXtyZXR1cm4gIk9ORSI7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKdmFyIF9fcmVzdWx0ID0gX19mdW5jKCk7CmlmIChfX3Jlc3VsdCAhPT0gIk9ORSIpIHsKCSRFUlJPUignIzI6IF9fcmVzdWx0ID09PSAiT05FIi4gQWN0dWFsOiBfX3Jlc3VsdCA9PT0nK19fcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fZnVuYyA9IGZ1bmN0aW9uICgpe3JldHVybiAiVFdPIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwp2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKTsKaWYgKF9fcmVzdWx0ICE9PSAiVFdPIikgewoJJEVSUk9SKCcjMzogX19yZXN1bHQgPT09ICJUV08iLiBBY3R1YWw6IF9fcmVzdWx0ID09PScrX19yZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A17_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE3X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTdfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb24gY2FsbCBjYW5ub3QgYXBwZWFyIGluIHRoZSBwcm9ncmFtIGJlZm9yZSB0aGUgRnVuY3Rpb25FeHByZXNzaW9uIGFwcGVhcnMiLAoKZGVzY3JpcHRpb246ICJUcnlpbmcgdG8gY2FsbCBhIGZ1bmN0aW9uIGJlZm9yZSB0aGUgRnVuY3Rpb25FeHByZXNzaW9uIGFwcGVhcnMgYW5kIHRoZW4gdXNpbmcgdGhlIEZ1bmN0aW9uRXhwcmVzc2lvbiBvbmUgbW9yZSB0aW1lIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeXsKICAgIHZhciBfX3Jlc3VsdCA9IF9fZnVuYygpOwoJJEVSUk9SKCIjMTogdmFyIF9fcmVzdWx0ID0gX19mdW5jKCkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24iKTsKfSBjYXRjaChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiBmdW5jIHNob3VsZCB0aHJvdyBhIFR5cGVFcnJvciAgQWN0dWFsOiAnICsgKGUpKTsgIAogIH0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vIG5vdyB3ZSByZWFjaCB0aGUgX19mdW5jIG92ZXJ3cml0aW5nIGJ5IG5ldyBleHByZXNzaW9uCnZhciBfX2Z1bmMgPSBmdW5jdGlvbiBfX2Z1bmMoKXtyZXR1cm4gIk9ORSI7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKdmFyIF9fcmVzdWx0ID0gX19mdW5jKCk7CmlmIChfX3Jlc3VsdCAhPT0gIk9ORSIpIHsKCSRFUlJPUignIzI6IF9fcmVzdWx0ID09PSAiT05FIi4gQWN0dWFsOiBfX3Jlc3VsdCA9PT0nK19fcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCl9fZnVuYyA9IGZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiVFdPIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwp2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKTsKaWYgKF9fcmVzdWx0ICE9PSAiVFdPIikgewoJJEVSUk9SKCcjMzogX19yZXN1bHQgPT09ICJUV08iLiBBY3R1YWw6IF9fcmVzdWx0ID09PScrX19yZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A17_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE4IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTguanMiLAoKYXNzZXJ0aW9uOiAiQ2xvc3VyZXMgYXJlIGFkbWl0dGVkIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgYSBmdW5jdGlvbiBkZWNsYXJhdGlvbiBhcyBhIGZ1bmN0aW9uIHBhcmFtZXRlciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIHNpbnggIT09ICd1bmRlZmluZWQnKSB7CgkkRVJST1IoJyMxOiB0eXBlb2Ygc2lueCA9PT0gXCd1bmRlZmluZWRcJy4gQWN0dWFsOiB0eXBlb2Ygc2lueCA9PT0nK3R5cGVvZiBzaW54KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnZhciBfX3ZhbCA9IGZ1bmN0aW9uIGRlcml2YXRpdmUoZiwgZHgpIHsKICAgIHJldHVybiBmdW5jdGlvbih4KSB7CiAgICAgIHJldHVybiAoZih4ICsgZHgpIC0gZih4KSkgLyBkeDsKICAgIH07Cn0oZnVuY3Rpb24gc2lueCh4KXtyZXR1cm4gTWF0aC5zaW4oeCk7fSwuMDAwMSkoMC41KTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKHR5cGVvZiBzaW54ICE9PSAndW5kZWZpbmVkJykgewoJJEVSUk9SKCcjMjogdHlwZW9mIHNpbnggPT09IFwndW5kZWZpbmVkXCcuIEFjdHVhbDogdHlwZW9mIHNpbnggPT09Jyt0eXBlb2Ygc2lueCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE5X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTlfVDEuanMiLAoKYXNzZXJ0aW9uOiAiXCJ2YXJcIiBkb2VzIG5vdCBvdmVycmlkZSBmdW5jdGlvbiBkZWNsYXJhdGlvbiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gYW5kIGEgdmFyaWFibGUgd2l0aCBpZGVudGljYWwgSWRlbnRpZmllcnMgaW4gZ2xvYmFsIHNjb3BlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLyBzaW5jZSAidmFyIiBkb2VzIG5vdCBvdmVycmlkZSBmdW5jdGlvbiBkZWNsYXJhdGlvbiBfX2RlY2wgaXMgc2V0IHRvIGZ1bmN0aW9uCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2RlY2wgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2RlY2wgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZGVjbCA9PT0nK3R5cGVvZiBfX2RlY2wpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fZGVjbCA9IDE7CgovL3NpbmNlIHN0YXRlbWVudCB3YXMgZXZhbHV0ZWQgX19kZWNsIHR1cm5zIHRvIDEgZnJvbSBmdW5jdGlvbgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2RlY2wgIT09IDEpIHsKCSRFUlJPUignIzI6IF9fZGVjbCA9PT0gMS4gQWN0dWFsOiBfX2RlY2wgPT09JytfX2RlY2wpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19kZWNsKCl7cmV0dXJuIDE7fQoKIH0KfSk7Cgo=","id":"S13_A19_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTE5X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXFMxM19BMTlfVDIuanMiLAoKYXNzZXJ0aW9uOiAiXCJ2YXJcIiBkb2VzIG5vdCBvdmVycmlkZSBmdW5jdGlvbiBkZWNsYXJhdGlvbiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gYW5kIGEgdmFyaWFibGUgd2l0aCBpZGVudGljYWwgSWRlbnRpZmllcnMgd2l0aGluIGZ1bmN0aW9uIHNjb3BlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAoZnVuY3Rpb24gKCl7CgogICAgLy8gc2luY2UgInZhciIgZG9lcyBub3Qgb3ZlcnJpZGUgZnVuY3Rpb24gZGVjbGFyYXRpb24gX19kZWNsIGlzIHNldCB0byBmdW5jdGlvbgogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAgICAvL0NIRUNLIzEKICAgIGlmICh0eXBlb2YgX19kZWNsICE9PSAiZnVuY3Rpb24iKSB7CiAgICAJJEVSUk9SKCcjMTogdHlwZW9mIF9fZGVjbCA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19kZWNsID09PScrdHlwZW9mIF9fZGVjbCk7CiAgICB9CiAgICAvLwogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAgICAKICAgIHZhciBfX2RlY2wgPSAxOwogICAgCiAgICAvL3NpbmNlIHN0YXRlbWVudCB3YXMgZXZhbHV0ZWQgX19kZWNsIHR1cm5zIHRvIDEgZnJvbSBmdW5jdGlvbgogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAgICAvL0NIRUNLIzIKICAgIGlmIChfX2RlY2wgIT09IDEpIHsKICAgIAkkRVJST1IoJyMyOiBfX2RlY2wgPT09IDEuIEFjdHVhbDogX19kZWNsID09PScrX19kZWNsKTsKICAgIH0KICAgIC8vCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiAgICBmdW5jdGlvbiBfX2RlY2woKXtyZXR1cm4gMTt9Cn0pKCk7ICAgIAoKIH0KfSk7Cgo=","id":"S13_A19_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTJfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0EyX1QxLmpzIiwKCmFzc2VydGlvbjogImZ1bmN0aW9uIG11c3QgYmUgZXZhbHVhdGVkIGluc2lkZSB0aGUgZXhwcmVzc2lvbiIsCgpkZXNjcmlwdGlvbjogIkRlZmluaW5nIGZ1bmN0aW9uIGJvZHkgd2l0aCBcInJldHVybiBhcmdcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIHggPSAoZnVuY3Rpb24gX19mdW5jKGFyZyl7cmV0dXJuIGFyZ30pKDEpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoeCAhPT0gMSkgewoJJEVSUk9SKCcjMTogeCA9PT0gMS4gQWN0dWFsOiB4ID09PScreCk7Cn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIF9fZnVuYyAhPT0gJ3VuZGVmaW5lZCcpIHsKCSRFUlJPUignIzI6IHR5cGVvZiBfX2Z1bmMgPT09IFwndW5kZWZpbmVkXCcuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTJfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0EyX1QyLmpzIiwKCmFzc2VydGlvbjogImZ1bmN0aW9uIG11c3QgYmUgZXZhbHVhdGVkIGluc2lkZSB0aGUgZXhwcmVzc2lvbiIsCgpkZXNjcmlwdGlvbjogIkRlZmluaW5nIGZ1bmN0aW9uIGJvZHkgd2l0aCBcInJldHVybiBhcmcgKyBhcmd1bWVudHNbMV1cIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIHggPSAoZnVuY3Rpb24gX19mdW5jKGFyZyl7cmV0dXJuIGFyZyArIGFyZ3VtZW50c1sxXX0pKDEsIjEiKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHggIT09ICIxMSIpIHsKCSRFUlJPUignIzE6IHggPT09ICIxMSIuIEFjdHVhbDogeCA9PT0nK3gpOwp9CgovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICd1bmRlZmluZWQnKSB7CgkkRVJST1IoJyMyOiB0eXBlb2YgX19mdW5jID09PSBcJ3VuZGVmaW5lZFwnLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTJfVDMiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0EyX1QzLmpzIiwKCmFzc2VydGlvbjogImZ1bmN0aW9uIG11c3QgYmUgZXZhbHVhdGVkIGluc2lkZSB0aGUgZXhwcmVzc2lvbiIsCgpkZXNjcmlwdGlvbjogIkRlZmluaW5nIGZ1bmN0aW9uIGJvZHkgd2l0aCBcInJldHVybiBhcmd1bWVudHNbMF0gK1wiLVwiKyBhcmd1bWVudHNbMV1cIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIHggPSAoZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuIGFyZ3VtZW50c1swXSArIi0iKyBhcmd1bWVudHNbMV19KSgiT2JpIiwiV2FuIik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh4ICE9PSAiT2JpLVdhbiIpIHsKCSRFUlJPUignIzE6IHggPT09ICJPYmktV2FuIi4gQWN0dWFsOiB4ID09PScreCk7Cn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIF9fZnVuYyAhPT0gJ3VuZGVmaW5lZCcpIHsKCSRFUlJPUignIzI6IHR5cGVvZiBfX2Z1bmMgPT09IFwndW5kZWZpbmVkXCcuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTNfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0EzX1QxLmpzIiwKCmFzc2VydGlvbjogIlRoZSBJZGVudGlmaWVyIGluIGEgRnVuY3Rpb25FeHByZXNzaW9uIGNhbiBiZSByZWZlcmVuY2VkIGZyb20gaW5zaWRlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb25cJ3MgRnVuY3Rpb25Cb2R5IHRvIGFsbG93IHRoZSBmdW5jdGlvbiBjYWxsaW5nIGl0c2VsZiByZWN1cnNpdmVseSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgcmVjdXJzaXZlIGZ1bmN0aW9uIHRoYXQgY2FsY3VsYXRlcyBmYWN0b3JpYWwsIGFzIGEgdmFyaWFibGUuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19mdW5jID0gZnVuY3Rpb24gX19leHBfX2Z1bmMoYXJnKXsKICAgIGlmIChhcmcgPT09IDEpIHsKICAgIAlyZXR1cm4gYXJnOwogICAgfSBlbHNlIHsKICAgIAlyZXR1cm4gX19leHBfX2Z1bmMoYXJnLTEpKmFyZzsKICAgIH0KfTsKCnZhciBmYWN0X29mXzMgPSAgX19mdW5jKDMpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoZmFjdF9vZl8zICE9PSA2KSB7CgkkRVJST1IoIiMxOiBmYWN0X29mXzMgPT09IDYuIEFjdHVhbDogZmFjdF9vZl8zID09PSIrZmFjdF9vZl8zKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTNfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0EzX1QyLmpzIiwKCmFzc2VydGlvbjogIlRoZSBJZGVudGlmaWVyIGluIGEgRnVuY3Rpb25FeHByZXNzaW9uIGNhbiBiZSByZWZlcmVuY2VkIGZyb20gaW5zaWRlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb25cJ3MgRnVuY3Rpb25Cb2R5IHRvIGFsbG93IHRoZSBmdW5jdGlvbiBjYWxsaW5nIGl0c2VsZiByZWN1cnNpdmVseSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgcmVjdXJzaXZlIGZ1bmN0aW9uIHRoYXQgY2FsY3VsYXRlcyBmYWN0b3JpYWwsIGFzIGEgdmFyaWFibGUuIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19mdW5jID0gZnVuY3Rpb24gKGFyZyl7CiAgICBpZiAoYXJnID09PSAxKSB7CiAgICAJcmV0dXJuIGFyZzsKICAgIH0gZWxzZSB7CiAgICAJcmV0dXJuIF9fZnVuYyhhcmctMSkqYXJnOwogICAgfQp9OwoKdmFyIGZhY3Rfb2ZfMyA9ICBfX2Z1bmMoMyk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmYWN0X29mXzMgIT09IDYpIHsKCSRFUlJPUigiIzE6IGZhY3Rfb2ZfMyA9PT0gNi4gQWN0dWFsOiBmYWN0X29mXzMgPT09IitmYWN0X29mXzMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTNfVDMiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0EzX1QzLmpzIiwKCmFzc2VydGlvbjogIlRoZSBJZGVudGlmaWVyIGluIGEgRnVuY3Rpb25FeHByZXNzaW9uIGNhbiBiZSByZWZlcmVuY2VkIGZyb20gaW5zaWRlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb25cJ3MgRnVuY3Rpb25Cb2R5IHRvIGFsbG93IHRoZSBmdW5jdGlvbiBjYWxsaW5nIGl0c2VsZiByZWN1cnNpdmVseSIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIHNpbXBsZSByZWN1cnNpdmUgZnVuY3Rpb24gdGhhdCBjYWxjdWxhdGVzIGZhY3RvcmlhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKGFyZyl7CiAgICBpZiAoYXJnID09PSAxKSB7CiAgICAJcmV0dXJuIGFyZzsKICAgIH0gZWxzZSB7CiAgICAJcmV0dXJuIF9fZnVuYyhhcmctMSkqYXJnOwogICAgfQp9OwoKdmFyIGZhY3Rfb2ZfMyA9ICBfX2Z1bmMoMyk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmYWN0X29mXzMgIT09IDYpIHsKCSRFUlJPUigiIzE6IGZhY3Rfb2ZfMyA9PT0gNi4gQWN0dWFsOiBmYWN0X29mXzMgPT09IitmYWN0X29mXzMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTRfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E0X1QxLmpzIiwKCmFzc2VydGlvbjogIlRoZSBwcm9kdWN0aW9uIEZ1bmN0aW9uRGVjbGFyYXRpb246IFwiZnVuY3Rpb24gSWRlbnRpZmllciAoIEZvcm1hbFBhcmFtZXRlckxpc3Rfb3B0ICkgeyBGdW5jdGlvbkJvZHkgfVwiIGlzIHByb2Nlc3NlZCBieSBmdW5jdGlvbiBkZWNsYXJhdGlvbnMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB0aGF0IHJldHVybnMgc3RyaW5nIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXtyZXR1cm4gInppZy16aWctc3B1dG5payI7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEgCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygpICE9PSAiemlnLXppZy1zcHV0bmlrIikgewoJJEVSUk9SKCcjMjogX19mdW5jKCkgPT09ICJ6aWctemlnLXNwdXRuaWsiLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTRfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E0X1QyLmpzIiwKCmFzc2VydGlvbjogIlRoZSBwcm9kdWN0aW9uIEZ1bmN0aW9uRGVjbGFyYXRpb246IFwiZnVuY3Rpb24gSWRlbnRpZmllciAoIEZvcm1hbFBhcmFtZXRlckxpc3Rfb3B0ICkgeyBGdW5jdGlvbkJvZHkgfVwiIGlzIHByb2Nlc3NlZCBieSBmdW5jdGlvbiBkZWNsYXJhdGlvbnMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB0aGF0IHVzZXMgcHJlZml4IGluY3JlbWVudCBvcGVyYXRvciB3aXRoaW4gaXRzIFwicmV0dXJuXCIgRXhwcmVzc2lvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKGFyZyl7cmV0dXJuICsrYXJnO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxIAppZiAodHlwZW9mIF9fZnVuYyAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIF9fZnVuYyA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2Z1bmMoMSkgIT09IDIpIHsKCSRFUlJPUignIzI6IF9fZnVuYygxKSA9PT0gMi4gQWN0dWFsOiBfX2Z1bmMoMSkgPT09JytfX2Z1bmMoMSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTRfVDMiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E0X1QzLmpzIiwKCmFzc2VydGlvbjogIlRoZSBwcm9kdWN0aW9uIEZ1bmN0aW9uRGVjbGFyYXRpb246IFwiZnVuY3Rpb24gSWRlbnRpZmllciAoIEZvcm1hbFBhcmFtZXRlckxpc3Rfb3B0ICkgeyBGdW5jdGlvbkJvZHkgfVwiIGlzIHByb2Nlc3NlZCBieSBmdW5jdGlvbiBkZWNsYXJhdGlvbnMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB0aGF0IHVzZXMgYXJpdGhtZXRpY2FsIG9wZXJhdG9ycyB3aXRoaW4gaXRzIFwicmV0dXJuXCIgRXhwcmVzc2lvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKGFyZzEsIGFyZzIsIGFyZzMpe3JldHVybiBhcmcxKz0oYXJnMis9YXJnMyk7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEgCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygxMCwgMjAsIDMwKSAhPT0gNjApIHsKCSRFUlJPUignIzI6IF9fZnVuYygxMCwgMjAsIDMwKSA9PT0gNjAuIEFjdHVhbDogX19mdW5jKDEwLDIwLDMwKSA9PT0nK19fZnVuYygxMCwyMCwzMCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTRfVDQiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E0X1Q0LmpzIiwKCmFzc2VydGlvbjogIlRoZSBwcm9kdWN0aW9uIEZ1bmN0aW9uRGVjbGFyYXRpb246IFwiZnVuY3Rpb24gSWRlbnRpZmllciAoIEZvcm1hbFBhcmFtZXRlckxpc3Rfb3B0ICkgeyBGdW5jdGlvbkJvZHkgfVwiIGlzIHByb2Nlc3NlZCBieSBmdW5jdGlvbiBkZWNsYXJhdGlvbnMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB0aGF0IHVzZXMgc3RyaW5ncyBjb25jYXRlbmFpb24gb3BlYXRvciB3aXRoaW4gaXRzIFwicmV0dXJuXCIgRXhwcmVzc2lvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuIGFyZ3VtZW50c1swXS5uYW1lICsgIiAiICsgYXJndW1lbnRzWzBdLnN1cm5hbWU7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEgCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYyh7bmFtZTonZm94Jywgc3VybmFtZTonbWFsZGVyJ30pICE9PSAiZm94IG1hbGRlciIpIHsKCSRFUlJPUignIzI6IF9fZnVuYyh7bmFtZTpcJ2ZveFwnLCBzdXJuYW1lOlwnbWFsZGVyXCd9KSA9PT0gImZveCBtYWxkZXIiLiBBY3R1YWw6IF9fZnVuYyh7bmFtZTpcJ2ZveFwnLCBzdXJuYW1lOlwnbWFsZGVyXCd9KSA9PT0nK19fZnVuYyh7bmFtZTonZm94Jywgc3VybmFtZTonbWFsZGVyJ30pKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIGZ1bmNfXyhhcmcpe3JldHVybiBhcmcubmFtZSArICIgIiArIGFyZy5zdXJuYW1lO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzIAppZiAodHlwZW9mIGZ1bmNfXyAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMzogdHlwZW9mIGZ1bmNfXyA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChmdW5jX18oe25hbWU6J2pvaG4nLCBzdXJuYW1lOidsZW5ub24nfSkgIT09ICJqb2huIGxlbm5vbiIpIHsKCSRFUlJPUignIzQ6IGZ1bmNfXyh7bmFtZTpcJ2pvaG5cJywgc3VybmFtZTpcJ2xlbm5vblwnfSkgPT09ICJqb2huIGxlbm5vbiIuIEFjdHVhbDogX19mdW5jKHtuYW1lOlwnam9oblwnLCBzdXJuYW1lOlwnbGVubm9uXCd9KSA9PT0nK19fZnVuYyh7bmFtZTonam9obicsIHN1cm5hbWU6J2xlbm5vbid9KSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTUiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E1LmpzIiwKCmFzc2VydGlvbjogIk9ubHkgRm9ybWFsUGFyYW1ldGVyTGlzdCBhcyBhcmd1bWVudHMgbGlzdCBpcyBhbGxvd2VkIiwKCmRlc2NyaXB0aW9uOiAiVHJ5aW5nIHRvIHVzZSBbYXJnMSwgYXJnMiwgYXJnM10sIChhcmcxLCBhcmcyLCBhcmczKSwgZXRjLiBhcyBhIEZvcm1hbFBhcmFtZXRlckxpc3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewoJZXZhbCgiZnVuY3Rpb24gX19mdW5jKFthcmcxLCBhcmcyLCBhcmczXSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fSIpOwoJJEVSUk9SKCcjMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKFthcmcxLCBhcmcyLCBhcmczXSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2goZSl7CglpZighKGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikpewoJCSRFUlJPUignIzEuMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKFthcmcxLCBhcmcyLCBhcmczXSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uIG9mIFN5bnRheEVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwoJfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp0cnl7CglldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKGFyZzEsIGFyZzIsIGFyZzMpKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9Iik7CgkkRVJST1IoJyMyOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKGFyZzEsIGFyZzIsIGFyZzMpKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKQp9IGNhdGNoKGUpewoJaWYoIShlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IpKXsKCQkkRVJST1IoJyMyLjE6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYygoYXJnMSwgYXJnMiwgYXJnMykpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoO30iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbiBvZiBTeW50YXhFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKCX0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKdHJ5ewoJZXZhbCgiZnVuY3Rpb24gX19mdW5jKGFyZzEsIGFyZzIsIGFyZzMsKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9Iik7CgkkRVJST1IoJyMzOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoYXJnMSwgYXJnMiwgYXJnMywpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoO30iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpCn0gY2F0Y2goZSl7CglpZighKGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikpewoJCSRFUlJPUignIzMuMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKGFyZzEsIGFyZzIsIGFyZzMsKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24gb2YgU3ludGF4RXJyb3IuIEFjdHVhbDogZXhjZXB0aW9uIGlzICcrZSk7Cgl9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13_A5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTZfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E2X1QxLmpzIiwKCmFzc2VydGlvbjogIkZ1bmN0aW9uRGVjbGFyYXRpb24gY2FuIGJlIG92ZXJyaWRlZCBieSBvdGhlciBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggdGhlIHNhbWUgSWRlbnRpZmllciIsCgpkZXNjcmlwdGlvbjogIkR1cGxpY2F0aW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXtyZXR1cm4gMX07CiAKdmFyIF9fc3RvcmVfX2Z1bmMgPSBfX2Z1bmM7CiAKdmFyIF9fMSA9IF9fZnVuYygpOwogCiBmdW5jdGlvbiBfX2Z1bmMoKXtyZXR1cm4gJ0EnfTsKIAp2YXIgX19BID0gX19mdW5jKCk7CiAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19zdG9yZV9fZnVuYyAhPT0gX19mdW5jKSB7CgkkRVJST1IoJyMxOiBfX3N0b3JlX19mdW5jID09PSBfX2Z1bmMuIEFjdHVhbDogX19zdG9yZV9fZnVuYyA9PT0nK19fc3RvcmVfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyAKIAovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfXzEgIT09IF9fQSkgewoJJEVSUk9SKCcjMjogX18xID09PSBfX0EuIEFjdHVhbDogX18xID09PScrX18xKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A6_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTZfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E2X1QyLmpzIiwKCmFzc2VydGlvbjogIkZ1bmN0aW9uRGVjbGFyYXRpb24gY2FuIGJlIG92ZXJyaWRlZCBieSBvdGhlciBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggdGhlIHNhbWUgSWRlbnRpZmllciIsCgpkZXNjcmlwdGlvbjogIkNhbGxpbmcgYSBmdW5jdGlvbiBiZWZvcmUgaXQgaXMgZGVjbGFyZWQgb25lIG1vcmUgdGltZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnl7CiAgICB2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKTsKfSBjYXRjaChlKSB7CiAgICAkRkFJTCgiIzE6IEZ1bmN0aW9uIGNhbGwgY2FuIGFwcGVhcnMgaW4gdGhlIHByb2dyYW0gYmVmb3JlIHRoZSBGdW5jdGlvbkRlY2xhcmF0aW9uIGFwcGVhcnMiKTsKfQppZiAoX19yZXN1bHQgIT09ICJTRUNPTkQiKSB7CgkkRVJST1IoJyMxLjE6IF9fcmVzdWx0ID09PSAiU0VDT05EIi4gQWN0dWFsOiBfX3Jlc3VsdCA9PT0nK19fcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiRklSU1QiO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCl9fcmVzdWx0ID0gX19mdW5jKCk7CmlmIChfX3Jlc3VsdCAhPT0gIlNFQ09ORCIpIHsKCSRFUlJPUignIzI6IF9fcmVzdWx0ID09PSAiU0VDT05EIi4gQWN0dWFsOiBfX3Jlc3VsdCA9PT0nK19fcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiU0VDT05EIjt9OwoKIH0KfSk7Cgo=","id":"S13_A6_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTdfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E3X1QxLmpzIiwKCmFzc2VydGlvbjogIlRoZSBGdW5jdGlvbkJvZHkgbXVzdCBiZSBTb3VyY2VFbGVtZW50cyIsCgpkZXNjcmlwdGlvbjogIlVzaW5nIG9ubHkgU291cmNlRWxlbWVudHMgd2l0aGluIHRoZSBGdW5jdGlvbkJvZHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpeydncm91bmQgY29udHJvbCB0byBtYWpvciB0b20nfTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZnVuYyAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIF9fZnVuYyA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmNfXzIoKXtifTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIF9fZnVuY19fMiAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMjogdHlwZW9mIF9fZnVuY19fMiA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jX18yID09PScrdHlwZW9mIF9fZnVuY19fMik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmNfXzMoKXsxfTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAodHlwZW9mIF9fZnVuY19fMyAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMzogdHlwZW9mIF9fZnVuY19fMyA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jX18zID09PScrdHlwZW9mIF9fZnVuY19fMyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmNfXzQoKXsxK2N9OwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmICh0eXBlb2YgX19mdW5jX180ICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyM0OiB0eXBlb2YgX19mdW5jX180ID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmNfXzQgPT09Jyt0eXBlb2YgX19mdW5jX180KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuY19fNSgpe2luYyhkKX07Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHR5cGVvZiBfX2Z1bmNfXzUgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzU6IHR5cGVvZiBfX2Z1bmNfXzUgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZnVuY19fNSA9PT0nK3R5cGVvZiBfX2Z1bmNfXzUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jX182KCl7dmFyIFx1MDA0MiA9IDE7fTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNgppZiAodHlwZW9mIF9fZnVuY19fNiAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjNjogdHlwZW9mIF9fZnVuY19fNiA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jX182ID09PScrdHlwZW9mIF9fZnVuY19fNik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovL2Z1bmN0aW9uIF9fZnVuY19fNygpe3ZhciBcdTAwM2QgPSAxO307Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vLy9DSEVDSyM3Ci8vaWYgKHR5cGVvZiBfX2Z1bmNfXzcgIT09ICJmdW5jdGlvbiIpIHsKLy8JJEVSUk9SKCcjNzogVGhlIEZ1bmN0aW9uQm9keSBtdXN0IGJlIFNvdXJjZUVsZW1lbnRzJyk7Ci8vfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A7_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTdfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E3X1QyLmpzIiwKCmFzc2VydGlvbjogIlRoZSBGdW5jdGlvbkJvZHkgbXVzdCBiZSBTb3VyY2VFbGVtZW50cyIsCgpkZXNjcmlwdGlvbjogIkluc2VydGluZyBlbGVtZW50cyB0aGF0IGlzIGRpZmZlcmVudCBmcm9tIFNvdXJjZUVsZW1lbnRzIGludG8gdGhlIEZ1bmN0aW9uQm9keSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnl7CglldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKXsvIEFCQ30iKTsKCSRFUlJPUignIzE6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYygpey8gQUJDfSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2goZSl7CglpZighKGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikpewoJCSRFUlJPUignIzEuMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKCl7LyBBQkN9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24gb2YgU3ludGF4RXJyb3IuIEFjdHVhbDogZXhjZXB0aW9uIGlzICcrZSk7Cgl9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCnRyeXsKCWV2YWwoImZ1bmN0aW9uIF9fZnVuYygpeyYxfSIpOwoJJEVSUk9SKCcjMzogZXZhbCgiZnVuY3Rpb24gX19mdW5jKCl7JjF9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaChlKXsKCWlmKCEoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSl7CgkJJEVSUk9SKCcjMy4xOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKXsmMX0iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbiBvZiBTeW50YXhFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKCX0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKdHJ5ewoJZXZhbCgiZnVuY3Rpb24gX19mdW5jKCl7IyBBQkN9Iik7CgkkRVJST1IoJyM0OiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKXsjIEFCQ30iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoKGUpewoJaWYoIShlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IpKXsKCQkkRVJST1IoJyM0LjE6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYygpeyMgQUJDfSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uIG9mIFN5bnRheEVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwoJfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13_A7_T2"},{"code":"IGZ1bmN0aW9uIF9fZnVuYygpe1xBXEJcQ307CiAKCg==","id":"S13_A7_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQThfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E4X1QxLmpzIiwKCmFzc2VydGlvbjogIkFyZ3VtZW50cyBwcm9wZXJ0eSBvZiBhY3RpdmF0aW9uIG9iamVjdCBjb250YWlucyByZWFsIHBhcmFtcyB0byBiZSBwYXNzZWQiLAoKZGVzY3JpcHRpb246ICJDcmVhdGluZyBhIGZ1bmN0aW9uIGRlY2xhcmVkIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMocGFyYW0xLCBwYXJhbTIsIHBhcmFtMylcIiBhbmQgdXNpbmcgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBpbiBvcmRlciB0byBwZXJmb3JtIHRoZSB0ZXN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMocGFyYW0xLCBwYXJhbTIsIHBhcmFtMykgewogCXJldHVybiBhcmd1bWVudHMubGVuZ3RoOwogfQogCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygnQScpICE9PSAxKSB7CiAJJEVSUk9SKCcjMTogX19mdW5jKFwnQVwnKSA9PT0gMS4gQWN0dWFsOiBfX2Z1bmMoXCdBXCcpID09PScrX19mdW5jKCdBJykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCdBJywgJ0InLCAxLCAyLF9fZnVuYykgIT09IDUpIHsKCSRFUlJPUignIzI6IF9fZnVuYyhcJ0FcJywgXCdCXCcsIDEsIDIsX19mdW5jKSA9PT0gNS4gQWN0dWFsOiBfX2Z1bmMoXCdBXCcsIFwnQlwnLCAxLCAyLF9fZnVuYykgPT09JytfX2Z1bmMoJ0EnLCAnQicsIDEsIDIsX19mdW5jKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAKIAogCgogfQp9KTsKCg==","id":"S13_A8_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQThfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E4X1QyLmpzIiwKCmFzc2VydGlvbjogIkFyZ3VtZW50cyBwcm9wZXJ0eSBvZiBhY3RpdmF0aW9uIG9iamVjdCBjb250YWlucyByZWFsIHBhcmFtcyB0byBiZSBwYXNzZWQiLAoKZGVzY3JpcHRpb246ICJDcmVhdGluZyBhIGZ1bmN0aW9uIHdpdGggbm8gcGFyYW1ldGVycyBhbmQgdXNpbmcgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBpbiBvcmRlciB0byBwZXJmb3JtIHRoZSB0ZXN0IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKSB7CiAJcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7CiB9CiAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKCdBJykgIT09IDEpIHsKIAkkRVJST1IoJyMxOiBfX2Z1bmMoXCdBXCcpID09PSAxLiBBY3R1YWw6IF9fZnVuYyhcJ0FcJykgPT09JytfX2Z1bmMoJ0EnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2Z1bmMoJ0EnLCAnQicsIDEsIDIsX19mdW5jKSAhPT0gNSkgewoJJEVSUk9SKCcjMjogX19mdW5jKFwnQVwnLCBcJ0JcJywgMSwgMixfX2Z1bmMpID09PSA1LiBBY3R1YWw6IF9fZnVuYyhcJ0FcJywgXCdCXCcsIDEsIDIsX19mdW5jKSA9PT0nK19fZnVuYygnQScsICdCJywgMSwgMixfX2Z1bmMpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fZnVuYygpICE9PSAwKSB7CgkkRVJST1IoJyMzOiBfX2Z1bmMoKSA9PT0gMC4gQWN0dWFsOiBfX2Z1bmMoKSA9PT0nK19fZnVuYygpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13_A8_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTNfQTkiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cUzEzX0E5LmpzIiwKCmFzc2VydGlvbjogIkZ1bmN0aW9uIGNhbiBiZSBwYXNzZWQgYXMgYXJndW1lbnQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBmdW5jdGlvbiBhcyBhcmd1bWVudCBvZiBhbm90aGVyIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmNfX0lOQyhhcmcpe3JldHVybiBhcmcgKyAxO307CmZ1bmN0aW9uIF9fZnVuY19fTVVMVChpbmNyZW1lbnRhdG9yLCBhcmcsIG11bHQpeyByZXR1cm4gaW5jcmVtZW50YXRvcihhcmcpKm11bHQ7IH07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmNfX01VTFQoX19mdW5jX19JTkMsIDIsIDIpICE9PSA2KSB7CgkkRVJST1IoJyMxOiBmdW5jdGlvbiAgY2FuIGJlIHBhc3NlZCBhcyBhcmd1bWVudCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0ExX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0ExX1QxLmpzIiwKCmFzc2VydGlvbjogIlRoZSBkZXB0aCBvZiBuZXN0ZWQgZnVuY3Rpb24gY2FsbHMgcmVhY2hlcyAzMiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGZ1bmN0aW9uIGNhbGxzIDMyIGVsZW1lbnRzIGRlcHRoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAoZnVuY3Rpb24oKXsKICAgIChmdW5jdGlvbigpewogICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpe30pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgfSkoKQogICAgICAgIH0pKCkKICAgIH0pKCkKfSkoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiB9Cn0pOwoK","id":"S13.2.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1QxLmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBudW1iZXIgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoX19hcmcpewogICAgX19hcmcuZm9vPTc7Cn0KCnZhciBfX29iaj17fTsKCl9fZnVuYyhfX29iaik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai5mb28gIT09IDcpIHsKCSRFUlJPUignIzE6IF9fb2JqLmZvbyA9PT0gNy4gQWN0dWFsOiBfX29iai5mb28gPT09JytfX29iai5mb28pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.1_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1QyLmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBzdHJpbmcgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoX19hcmcpewogICAgX19hcmcuZm9vPSJ3aGlza2V5IGdvZ28iOwp9Cgp2YXIgX19vYmo9e307CgogX19mdW5jKF9fb2JqKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLmZvbyAhPT0gIndoaXNrZXkgZ29nbyIpIHsKCSRFUlJPUignIzE6IF9fb2JqLmZvbyA9PT0gIndoaXNrZXkgZ29nbyIuIEFjdHVhbDogX19vYmouZm9vID09PScrX19vYmouZm9vKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1QzLmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBudW1iZXIgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIGFyZ3VtZW50c1swXVsiUEkiXT0zLjE0Owp9Cgp2YXIgX19vYmo9e307CgpfX2Z1bmMoX19vYmopOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19vYmouUEkgIT09IDMuMTQpIHsKCSRFUlJPUignIzE6IF9fb2JqLlBJID09PSAzLjE0LiBBY3R1YWw6IF9fb2JqLlBJID09PScrX19vYmouUEkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.1_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1Q0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1Q0LmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBudW1iZXIgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIGFyZ3VtZW50c1swXVsiRSJdPTIuNzQ7Cn0KCnZhciBfX29iaj17fTsKCl9fZnVuYyhfX29iaik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai5FICE9PSAyLjc0KSB7CgkkRVJST1IoJyMxOiBfX29iai5FID09PSAyLjc0LiBBY3R1YWw6IF9fb2JqLkUgPT09JytfX29iai5FKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E1X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E1X1QxLmpzIiwKCmFzc2VydGlvbjogIkNsb3N1cmVzIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIlNvcnRpbmcgd2l0aCBjbG9zdXJlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19hcnIgPSBbNCwzLDIsMSw0LDMsMiwxLDQsMywyLDFdOwovL1NvcnQgdXNlcyBjbG9zdXJlCi8vCl9fYXJyLnNvcnQoCglmdW5jdGlvbih4LHkpIHsgCgkJaWYgKHg+eSl7cmV0dXJuIC0xO30gCgkJaWYgKHg8eSl7cmV0dXJuIDE7fSAKCQlpZiAoeD09eSl7cmV0dXJuIDA7fSAKCX0KKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fYXJyLnRvU3RyaW5nKCkgIT09IFs0LDQsNCwzLDMsMywyLDIsMiwxLDEsMV0udG9TdHJpbmcoKSkgewoJJEVSUk9SKCcjMTogX19hcnIudG9TdHJpbmcoKSA9PT0gWzQsNCw0LDMsMywzLDIsMiwyLDEsMSwxXS50b1N0cmluZygpLiBBY3R1YWw6IF9fYXJyLnRvU3RyaW5nKCkgPT09JytfX2Fyci50b1N0cmluZygpKTsKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vICAKCiB9Cn0pOwoK","id":"S13.2.1_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E1X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E1X1QyLmpzIiwKCmFzc2VydGlvbjogIkNsb3N1cmVzIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIlJldHVybmluZyBhIGZ1bmN0aW9uIHRoYXQgYXBwcm94aW1hdGVzIHRoZSBkZXJpdmF0aXZlIG9mIGYiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vIFJldHVybiBhIGZ1bmN0aW9uIHRoYXQgYXBwcm94aW1hdGVzIHRoZSBkZXJpdmF0aXZlIG9mIGYKLy8gdXNpbmcgYW4gaW50ZXJ2YWwgb2YgZHgsIHdoaWNoIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNtYWxsLgpmdW5jdGlvbiBkZXJpdmF0aXZlKGYsIGR4KSB7CiAgICByZXR1cm4gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4gKGYoeCArIGR4KSAtIGYoeCkpIC8gZHg7CiAgICB9Owp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChNYXRoLmFicyhkZXJpdmF0aXZlKE1hdGguc2luLCAwLjAwMDEpKDApIC0gZGVyaXZhdGl2ZShNYXRoLnNpbiwgMC4wMDAxKSgyKk1hdGguUEkpKSA+PSAxLzY1NTM2LjApIHsKCSRFUlJPUignIzE6IE1hdGguYWJzKGRlcml2YXRpdmUoTWF0aC5zaW4sIDAuMDAwMSkoMCkgLSBkZXJpdmF0aXZlKE1hdGguc2luLCAwLjAwMDEpKDIqTWF0aC5QSSkpIDw9IDEvNjU1MzYuMCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.1_A5_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E2X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E2X1QxLmpzIiwKCmFzc2VydGlvbjogIlByaW1pdGl2ZSB0eXBlcyBhcmUgcGFzc2VkIGJ5IHZhbHVlIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcImZ1bmN0aW9uIF9fZnVuYyhhcmcxLCBhcmcyKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoYXJnMSwgYXJnMil7CiAgICBhcmcxKys7CiAgICBhcmcyKz0iQkEiOwp9OwoKdmFyIHg9MTsKeT0yOwp2YXIgYT0iQUIiCmI9IlNBTSI7CgpfX2Z1bmMoeCxhKTsKX19mdW5jKHksYik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh4IT09MSB8fCB5IT09MiB8fCBhIT09IkFCIiB8fCBiIT09IlNBTSIpIHsKCSRFUlJPUignIzE6IHggPT09IDEgYW5kIHkgPT09IDIgYW5kIGEgPT09ICJBQiIgYW5kIGIgPT09ICJTQU0iLiBBY3R1YWw6IHggPT09Jyt4KycgYW5kIHkgPT09Jyt5KycgYW5kIGEgPT09JythKycgYW5kIGIgPT09JytiKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A6_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E2X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E2X1QyLmpzIiwKCmFzc2VydGlvbjogIlByaW1pdGl2ZSB0eXBlcyBhcmUgcGFzc2VkIGJ5IHZhbHVlIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcIl9fZnVuYyA9IGZ1bmN0aW9uKGFyZzEsIGFyZzIpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fZnVuYyA9IGZ1bmN0aW9uKGFyZzEsIGFyZzIpewogICAgYXJnMSsrOwogICAgYXJnMis9IkJBIjsKfTsKCnZhciB4PTE7Cnk9MjsKdmFyIGE9IkFCIgpiPSJTQU0iOwoKX19mdW5jKHgsYSk7Cl9fZnVuYyh5LGIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoeCE9PTEgfHwgeSE9PTIgfHwgYSE9PSJBQiIgfHwgYiE9PSJTQU0iKSB7CgkkRVJST1IoJyMxOiB4ID09PSAxIGFuZCB5ID09PSAyIGFuZCBhID09PSAiQUIiIGFuZCBiID09PSAiU0FNIi4gQWN0dWFsOiB4ID09PScreCsnIGFuZCB5ID09PScreSsnIGFuZCBhID09PScrYSsnIGFuZCBiID09PScrYik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A6_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIG51bGwuIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHZhciB4ID0gbnVsbDsKICAgIHJldHVybiB4Owp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeXsKICAgIHZhciB4PV9fZnVuYygpOwp9IGNhdGNoKGUpewogICAgJEVSUk9SKCcjMTogdmFyIHg9X19mdW5jKCkgZG9lcyBub3QgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24uIEFjdHVhbDogZXhjZXB0aW9uIGlzICcrZSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A7_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIG51bGwuIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19mdW5jID0gZnVuY3Rpb24gKClcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uICgpewogICAgdmFyIHggPSBudWxsOwogICAgcmV0dXJuIHg7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgdmFyIHg9X19mdW5jKCk7Cn0gY2F0Y2goZSl7CiAgICAkRVJST1IoJyMxOiB2YXIgeD1fX2Z1bmMoKSBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbi4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A7_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1QzLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIG51bWJlci4gRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcImZ1bmN0aW9uIF9fZnVuYygpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpewogICAgeCA9IDE7CiAgICByZXR1cm4geDsKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCnRyeSB7Cgl4PXg7CgkkRVJST1IoJyMwOiAieD14IiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgdmFyIF9feD1fX2Z1bmMoKQp9IGNhdGNoKGUpewogICAgJEVSUk9SKCcjMTogdmFyIF9feD1fX2Z1bmMoKSBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbi4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9feCAhPT0gMSkgewoJJEVSUk9SKCcjMjogX194ID09PSAxLiBBY3R1YWw6IF9feCA9PT0nK19feCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh4ICE9PSAxKSB7CgkkRVJST1IoJyMzOiB4ID09PSAxLiBBY3R1YWw6IHggPT09Jyt4KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.1_A7_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1Q0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1Q0LmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIGJvb2xlYW4uIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHZhciB4ID0gdHJ1ZTsKICAgIHJldHVybiB4Owp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMKdHJ5IHsKCXg9eDsKCSRFUlJPUignIzA6ICJ4PXgiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnl7CiAgICB2YXIgX194PV9fZnVuYygpCn0gY2F0Y2goZSl7CiAgICAkRVJST1IoJyMxOiB2YXIgX194PV9fZnVuYygpIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShfX3gpKSB7CgkkRVJST1IoJyMyOiBfX3ggPT09IHRydWUuIEFjdHVhbDogX194ID09PScrX194KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKdHJ5IHsKCXg9eDsKCSRFUlJPUignIzM6ICJ4PXgiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13.2.1_A7_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E4X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E4X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiVGhyb3dpbmcgYW4gZXhjZXB0aW9uIHdpdGhpbiBhIGZ1bmN0aW9uIGJvZHkuIERlY2xhcmluZyBmdW5jdGlvbiB3aXRoIFwiZnVuY3Rpb24gX19mdW5jKClcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7CiAgICB2YXIgeCA9IDE7CiAgICB0aHJvdyAoIkNhdGNoIE1lIElmIFlvdSBDYW4iKQogICAgcmV0dXJuIHg7Cn0KCnRyeXsKICAgIHZhciB4PV9fZnVuYygpCiAgICAkRVJST1IoJyMwOiB2YXIgeD1fX2Z1bmMoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoKGUpewogICAgaWYgKGUgIT09ICJDYXRjaCBNZSBJZiBZb3UgQ2FuIikgewogICAgCSRFUlJPUignIzE6IEV4Y2VwdGlvbiA9PT0gIkNhdGNoIE1lIElmIFlvdSBDYW4iLiBBY3R1YWw6IGV4Y2VwdGlvbiA9PT0nK2UpOwogICAgfQp9CgogfQp9KTsKCg==","id":"S13.2.1_A8_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E4X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E4X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiVGhyb3dpbmcgYW4gZXhjZXB0aW9uIHdpdGhpbiBhIGZ1bmN0aW9uIGJvZHkuIERlY2xhcmluZyBmdW5jdGlvbiB3aXRoIFwidmFyIF9fZnVuYyA9IGZ1bmN0aW9uIChtZXNzYWdlKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgQ0FUQ0hfTUVfSUZfWU9VX0NBTiA9IHRydWU7Cgp2YXIgX19mdW5jID0gZnVuY3Rpb24gKG1lc3NhZ2UpewogICAgdmFyIHggPSAxOwogICAgdGhyb3cgKG1lc3NhZ2UpCiAgICByZXR1cm4geDsKfQoKdHJ5ewogICAgdmFyIHg9X19mdW5jKENBVENIX01FX0lGX1lPVV9DQU4pCiAgICAkRVJST1IoJyMwOiB2YXIgeD1fX2Z1bmMoQ0FUQ0hfTUVfSUZfWU9VX0NBTikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaChlKXsKICAgIGlmICghZSkgewogICAgCSRFUlJPUignIzE6IEV4Y2VwdGlvbiA9PT0gdHJ1ZS4gQWN0dWFsOiBleGNlcHRpb24gPT09JytlKTsKICAgIH0KfQoKIH0KfSk7Cgo=","id":"S13.2.1_A8_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5LjFfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMl9DcmVhdGluZ19GdW5jdGlvbl9PYmplY3RzXFMxMy4yLjFfQTkuMV9UMS5qcyIsCgphc3NlcnRpb246ICJXaGVuIHRoZSBbW0NhbGxdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgaXMgY2FsbGVkLCIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIGFuZCBubyBcInJldHVyblwiIGluIHRoZSBmdW5jdGlvbiBib2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsKCmZ1bmN0aW9uIF9fZnVuYygpewogICAgeCA9IHRydWU7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygpICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19mdW5jKCkgPT09JytfX2Z1bmMoKSk7Cn07Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIXgpIHsKCSRFUlJPUignIzI6IHggPT09IHRydWUuIEFjdHVhbDogeCA9PT0gJyt4KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A9.1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5LjFfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMl9DcmVhdGluZ19GdW5jdGlvbl9PYmplY3RzXFMxMy4yLjFfQTkuMV9UMi5qcyIsCgphc3NlcnRpb246ICJXaGVuIHRoZSBbW0NhbGxdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgaXMgY2FsbGVkLCIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19mdW5jID0gZnVuY3Rpb24oKVwiIGFuZCBubyBcInJldHVyblwiIGluIHRoZSBmdW5jdGlvbiBib2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbigpewogICAgeCA9IHRydWU7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygpICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19mdW5jKCkgPT09JytfX2Z1bmMoKSk7Cn07Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIXgpIHsKCSRFUlJPUignIzI6IHggPT09IHRydWUuIEFjdHVhbDogeCA9PT0gJyt4KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A9.1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E5X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgXCJyZXR1cm5cIiB3aXRoIG5vIGV4cHJlc3Npb24uIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsgCgpmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHggPSAxOwogICAgcmV0dXJuOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoKSAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9OwovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKHghPT0xKSB7CgkkRVJST1IoJyMyOiB4ID09PSAxLiBBY3R1YWw6IHggPT09ICcreCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A9_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E5X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgXCJyZXR1cm5cIiB3aXRoIG5vIGV4cHJlc3Npb24uIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19mdW5jID0gZnVuY3Rpb24oKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsgCgp2YXIgX19mdW5jID0gZnVuY3Rpb24oKXsKICAgIHggPSAxOwogICAgcmV0dXJuOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoKSAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9OwovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKHghPT0xKSB7CgkkRVJST1IoJyMyOiB4ID09PSAxLiBBY3R1YWw6IHggPT09ICcreCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A9_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTAuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgcG9zc2libGUgYXMgbG9uZyBhcyB0aGlzLmFueV9GdW5jdGlvbiBpcyBkZWNsYXJlZCIsCgpkZXNjcmlwdGlvbjogIkNhbGxpbmcgYSBmdW5jdGlvbiBhcyBhIGNvbnN0cnVjdG9yIGFmdGVyIGl0IGhhcyBiZWVuIGRlY2xhcmVkIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBGQUNUT1JZKCl7CiAgIHRoaXMuaWQgPSAwOwogICAKICAgdGhpcy5mdW5jID0gZnVuY3Rpb24gKCl7CiAgICAgIHJldHVybiA1OwogICB9CiAgIAogICB0aGlzLmlkID0gdGhpcy5mdW5jKCk7CiAgICAgCn0KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewoJdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCk7Cn0gY2F0Y2ggKGUpIHsKCSRFUlJPUignIzE6IHZhciBvYmogPSBuZXcgRkFDVE9SWSgpIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uLiBBY3R1YWw6IEV4Y2VwdGlvbiBpcyAnK2UpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAob2JqLmlkICE9PSA1KSB7CgkkRVJST1IoJyMyOiBvYmouaWQgPT09IDUuIEFjdHVhbDogb2JqLmlkID09PScrb2JqLmlkKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTEuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgcG9zc2libGUgYXMgbG9uZyBhcyB0aGlzLmFueV9GdW5jdGlvbiBpcyBkZWNsYXJlZCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgd2l0aCBcImZ1bmN0aW9uIGZ1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBGQUNUT1JZKCl7CiAgIHRoaXMuaWQgPSAwOwogICAgICAKICAgdGhpcy5pZCA9IHRoaXMuZnVuYygpOwogICAKICAgZnVuY3Rpb24gZnVuYygpewogICAgICByZXR1cm4gImlkX3N0cmluZyI7CiAgIH0KICAgICAKfQovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7Cgl2YXIgb2JqID0gbmV3IEZBQ1RPUlkoKTsKCSRFUlJPUignIzE6IHZhciBvYmogPSBuZXcgRkFDVE9SWSgpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13.2.2_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTIuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgcG9zc2libGUgYXMgbG9uZyBhcyB0aGlzLmFueV9GdW5jdGlvbiBpcyBkZWNsYXJlZCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgd2l0aCBcImZ1bmN0aW9uIGZ1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBGQUNUT1JZKCl7CiAgIHRoaXMuaWQgPSAwOwogICAgICAKICAgdGhpcy5pZCA9IGZ1bmMoKTsKICAgCiAgIGZ1bmN0aW9uIGZ1bmMoKXsKICAgICAgcmV0dXJuICJpZF9zdHJpbmciOwogICB9CiAgICAgCn0KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewoJdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCk7Cn0gY2F0Y2ggKGUpIHsKCSRFUlJPUignIzE6IHZhciBvYmogPSBuZXcgRkFDVE9SWSgpIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uLiBBY3R1YWw6IEV4Y2VwdGlvbiBpcyAnK2UpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAob2JqLmlkICE9PSAiaWRfc3RyaW5nIikgewoJJEVSUk9SKCcjMjogb2JqLmlkID09PSAiaWRfc3RyaW5nIi4gQWN0dWFsOiBvYmouaWQgPT09JytvYmouaWQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTMuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgaW5hZG1pc3NpYmxlIGFzIGxvbmcgYXMgdGhpcy5hbnlfRnVuY3Rpb24gaXMgZGVjbGFyZWQgYnkgZXZhbCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgYnkgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gRkFDVE9SWSgpewogICB0aGlzLmlkID0gMDsKICAgICAgCiAgIHRoaXMuaWQgPSBmdW5jKCk7CiAgIAogICBldmFsKCJmdW5jdGlvbiBmdW5jKCl7cmV0dXJuIFwiaWRfc3RyaW5nXCI7fSIpOwogICAgIAp9Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKCXZhciBvYmogPSBuZXcgRkFDVE9SWSgpOwoJJEVSUk9SKCcjMTogdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkge30KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTQuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgaW5hZG1pc3NpYmxlIGFzIGxvbmcgYXMgdGhpcy5hbnlfRnVuY3Rpb24gaXMgZGVjbGFyZWQgYnkgZXZhbCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgYnkgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gRkFDVE9SWSgpewogICB0aGlzLmlkID0gMDsKICAgCiAgIGV2YWwoImZ1bmN0aW9uIGZ1bmMoKXtyZXR1cm4gXCJpZF9zdHJpbmdcIjt9Iik7CiAgICAgIAogICB0aGlzLmlkID0gZnVuYygpOwogICAgIAp9Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKCXZhciBvYmogPSBuZXcgRkFDVE9SWSgpOwp9IGNhdGNoIChlKSB7CgkkRVJST1IoJyMxOiB2YXIgb2JqID0gbmV3IEZBQ1RPUlkoKSBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDEuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwidmFyIG9iaiA9IHt9XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBvYmogIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2Ygb2JqID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2Ygb2JqID09PScrdHlwZW9mIG9iaik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX29iai5wcm9wICE9PSAiQSIpIHsKCSRFUlJPUignIzI6IF9fb2JqLnByb3AgPT09ICJBIi4gQWN0dWFsOiBfX29iai5wcm9wID09PScrX19vYmoucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX29iai5zbG90LnByb3AgIT09MSkgewoJJEVSUk9SKCcjMzogX19vYmouc2xvdC5wcm9wID09PTEuIEFjdHVhbDogX19vYmouc2xvdC5wcm9wID09PScrX19vYmouc2xvdC5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fRkFDVE9SWSgpewogICAgdGhpcy5wcm9wID0gMTsKICAgIHZhciBvYmogPSB7fTsKICAgIG9iai5wcm9wID0gIkEiOwogICAgb2JqLnNsb3QgPSB0aGlzOwogICAgcmV0dXJuIG9iajsKfQoKIH0KfSk7Cgo=","id":"S13.2.2_A15_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDIuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwib2JqID0ge31cIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gbmV3IF9fRkFDVE9SWSgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAob2JqLnByb3AgIT09ICJBIikgewoJJEVSUk9SKCcjMTogb2JqLnByb3AgPT09ICJBIi4gQWN0dWFsOiBvYmoucHJvcCA9PT0nK29iai5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnByb3AgIT09ICJBIikgewoJJEVSUk9SKCcjMjogX19vYmoucHJvcCA9PT0gIkEiLiBBY3R1YWw6IF9fb2JqLnByb3AgPT09JytfX29iai5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fb2JqLnNsb3QucHJvcCAhPT0xKSB7CgkkRVJST1IoJyMzOiBfX29iai5zbG90LnByb3AgPT09IDEuIEFjdHVhbDogX19vYmouc2xvdC5wcm9wID09PScrX19vYmouc2xvdC5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fRkFDVE9SWSgpewogICAgdGhpcy5wcm9wID0gMTsKICAgIG9iaiA9IHt9OwogICAgb2JqLnByb3AgPSAiQSI7CiAgICBvYmouc2xvdCA9IHRoaXM7CiAgICByZXR1cm4gb2JqOwp9CgogfQp9KTsKCg==","id":"S13.2.2_A15_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDMuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwidmFyIG9iaiA9IHt9XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRkFDVE9SWSA9IGZ1bmN0aW9uICgpewogICAgdGhpcy5wcm9wID0gMTsKICAgIHZhciBvYmogPSB7fTsKICAgIG9iai5wcm9wID0gIkEiOwogICAgb2JqLnNsb3QgPSB0aGlzOwogICAgcmV0dXJuIG9iajsKfQoKX19vYmogPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2Ygb2JqICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIG9iaiA9PT0nK3R5cGVvZiBvYmopOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gIkEiKSB7CgkkRVJST1IoJyMyOiBfX29iai5wcm9wID09PSAiQSIuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK19fb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19vYmouc2xvdC5wcm9wICE9PTEpIHsKCSRFUlJPUignIzM6IF9fb2JqLnNsb3QucHJvcCA9PT0xLiBBY3R1YWw6IF9fb2JqLnNsb3QucHJvcCA9PT0nK19fb2JqLnNsb3QucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A15_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDQuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwib2JqID0ge31cIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19GQUNUT1JZID0gZnVuY3Rpb24oKXsKICAgIHRoaXMucHJvcCA9IDE7CiAgICBvYmogPSB7fTsKICAgIG9iai5wcm9wID0gIkEiOwogICAgb2JqLnNsb3QgPSB0aGlzOwogICAgcmV0dXJuIG9iajsKfQoKX19vYmogPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChvYmoucHJvcCAhPT0gIkEiKSB7CgkkRVJST1IoJyMxOiBvYmoucHJvcCA9PT0gIkEiLiBBY3R1YWw6IG9iai5wcm9wID09PScrb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gIkEiKSB7CgkkRVJST1IoJyMyOiBfX29iai5wcm9wID09PSAiQSIuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK29iai5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fb2JqLnNsb3QucHJvcCAhPT0xKSB7CgkkRVJST1IoJyMzOiBfX29iai5zbG90LnByb3AgPT09MS4gQWN0dWFsOiBfX29iai5zbG90LnByb3AgPT09JytvYmouc2xvdC5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.2_A15_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNl9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTZfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIHdpdGhpbiBhIG5ldyBzdGF0ZW1lbnQgaXMgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBcImlzIF9fb2JqID0gbmV3IGZ1bmN0aW9uIF9fZnVuYygpe3RoaXMucHJvcD0xO31cIiBhcyBGdW5jdGlvbkV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBuZXcgZnVuY3Rpb24gX19mdW5jKCl7dGhpcy5wcm9wPTE7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnByb3AgIT09IDEpIHsKCSRFUlJPUignIzI6IF9fb2JqLnByb3AgPT09IDEuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK19fb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fZnVuYyAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzU6IHR5cGVvZiBfX2Z1bmMgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A16_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNl9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTZfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIHdpdGhpbiBhIG5ldyBzdGF0ZW1lbnQgaXMgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBcInZhciBfX29iaiA9IG5ldyBmdW5jdGlvbiBfX2Z1bmMoYXJnKXt0aGlzLnByb3A9YXJnO30oNSlcIiBhcyBGdW5jdGlvbkV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBuZXcgZnVuY3Rpb24gX19mdW5jKGFyZyl7dGhpcy5wcm9wPWFyZzt9KDUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gNSkgewoJJEVSUk9SKCcjMjogX19vYmoucHJvcCA9PT0gNS4gQWN0dWFsOiBfX29iai5wcm9wID09PScrX19vYmoucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19mdW5jICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMzogdHlwZW9mIF9fZnVuYyA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A16_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNl9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTZfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIHdpdGhpbiBhIG5ldyBzdGF0ZW1lbnQgaXMgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBcImlzIF9fb2JqID0gbmV3IGZ1bmN0aW9uIF9fZnVuYyhhcmcpe3RoaXMucHJvcD1hcmc7IHJldHVybiB7ZmVhdDogKythcmd9fSg1KVwiIGFzIEZ1bmN0aW9uRXhwcmVzc2lvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZnVuYyAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMgPT09ICJ1bmRlZmluZWQiJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBuZXcgZnVuY3Rpb24gX19mdW5jKGFyZyl7dGhpcy5wcm9wPWFyZzsgcmV0dXJuIHtmZWF0OiArK2FyZ319KDUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMyOiBfX29iai5wcm9wID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK19fb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19vYmouZmVhdCAhPT0gNikgewoJJEVSUk9SKCcjMzogX19vYmouZmVhdCA9PT0gNi4gQWN0dWFsOiBfX29iai5mZWF0ID09PScrX19vYmouZmVhdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmICh0eXBlb2YgX19mdW5jICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjNDogdHlwZW9mIF9fZnVuYyA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A16_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExN19UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTdfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIGNvbnRhaW5pbmcgXCJ3aXRoXCIgc3RhdGVtZW50IGlzIGFkbWl0dGVkIiwKCmRlc2NyaXB0aW9uOiAiVGhyb3dpbmcgYW4gZXhjZXB0aW9uIHdpdGhpbiBcIndpdGhcIiBzdGF0ZW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHRoaXMucDE9ImFsZXJ0IjsKCl9fb2JqPXtwMToxLGdldFJpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuICJyaWdodCI7fX07CgpnZXRSaWdodD1mdW5jdGlvbigpe3JldHVybiAibmFwcmF2byI7fTsKCnRyeSB7CgkoZnVuY3Rpb24oKXsKICAgICAgICB3aXRoKF9fb2JqKXsKICAgICAgICAgICAgcDE9IncxIjsKICAgICAgICAgICAgZ2V0UmlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fQogICAgICAgICAgICB0aHJvdyBwMTsKICAgICAgICB9CiAgICB9KSgpOwp9IGNhdGNoIChlKSB7CglyZXN1a3QgPSBwMTsKfQoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHAxIT09ImFsZXJ0IikgewoJJEVSUk9SKCcjMTogcDEgPT09ICJhbGVydCIuIEFjdHVhbDogcDE9PT0nK3AxKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKGdldFJpZ2h0KCkhPT0ibmFwcmF2byIpIHsKCSRFUlJPUignIzI6IGdldFJpZ2h0KCkgPT09ICJuYXByYXZvIi4gQWN0dWFsOiBnZXRSaWdodCgpID09PSAnK2dldFJpZ2h0KCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19vYmoucDEhPT0idzEiKSB7CgkkRVJST1IoJyMzOiBfX29iai5wMSA9PT0gIncxIi4gQWN0dWFsOiBfX29iai5wMSA9PT0nK19fb2JqLnAxKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fb2JqLmdldFJpZ2h0KCkhPT1mYWxzZSkgewoJJEVSUk9SKCcjNDogX19vYmouZ2V0UmlnaHQoKSA9PT0gZmFsc2UuIEFjdHVhbDogX19vYmouZ2V0UmlnaHQoKSA9PT0gJytfX29iai5nZXRSaWdodCgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHJlc3VrdCAhPT0gImFsZXJ0IikgewoJJEVSUk9SKCcjNTogcmVzdWt0ID09PSAiYWxlcnQiLiBBY3R1YWw6IHJlc3VrdCA9PT0nK3Jlc3VrdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgcmVzdWt0OwoKCiB9Cn0pOwoK","id":"S13.2.2_A17_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExN19UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTdfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIGNvbnRhaW5pbmcgXCJ3aXRoXCIgc3RhdGVtZW50IGlzIGFkbWl0dGVkIiwKCmRlc2NyaXB0aW9uOiAiSW4gdGhlIGNoZWNrIDQgd2UgcG9wdWxhdGUgZmllbGQgZ2V0UmlnaHQgaW4gX19vYmogb2JqZWN0IHNpbmNlIHZhciBnZXRSaWdodCBkZWNsYXJhdGlvbiBhZGRzIHZhcmlhYmxlIHRvIGZ1bmN0aW9uIHNjb3BlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBwMT0iYWxlcnQiOwoKdGhpcy5fX29iaj17cDE6MSxnZXRSaWdodDpmdW5jdGlvbigpe3JldHVybiAicmlnaHQiO319OwoKdmFyIGdldFJpZ2h0PWZ1bmN0aW9uKCl7cmV0dXJuICJuYXByYXZvIjt9OwoKcmVzdWt0PShmdW5jdGlvbigpewogICAgd2l0aChfX29iail7CiAgICAgICAgcDE9IncxIjsKICAgICAgICB2YXIgZ2V0UmlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fTsKICAgICAgICByZXR1cm4gcDE7CiAgICB9Cn0pKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChwMSE9PSJhbGVydCIpIHsKCSRFUlJPUignIzE6IHAxID09PSAiYWxlcnQiLiBBY3R1YWw6IHAxPT09JytwMSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChnZXRSaWdodCgpIT09Im5hcHJhdm8iKSB7CgkkRVJST1IoJyMyOiBnZXRSaWdodCgpID09PSAibmFwcmF2byIuIEFjdHVhbDogZ2V0UmlnaHQoKT09PScrZ2V0UmlnaHQoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX29iai5wMSE9PSJ3MSIpIHsKCSRFUlJPUignIzM6IF9fb2JqLnAxID09PSAidzEiLiBBY3R1YWw6IF9fb2JqLnAxID09PScrX19vYmoucDEpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19vYmouZ2V0UmlnaHQoKSE9PWZhbHNlKSB7CgkkRVJST1IoJyM0OiBfX29iai5nZXRSaWdodCgpID09PSBmYWxzZS4gQWN0dWFsOiBfX29iai5nZXRSaWdodCgpPT09JytfX29iai5nZXRSaWdodCgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHJlc3VrdCAhPT0gIncxIikgewoJJEVSUk9SKCcjNTogcmVzdWt0ID09PSAidzEiLiBBY3R1YWw6IHJlc3VrdCA9PT0nK3Jlc3VrdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgcmVzdWt0OwoKCiB9Cn0pOwoK","id":"S13.2.2_A17_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIGdsb2JhbCBzY29wZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGEgPSAxOwoKdmFyIF9fZnVuYz0gZnVuY3Rpb24oKXtyZXR1cm4gYTt9OwoKdmFyIF9fb2JqID0ge2E6Mn07Cgp3aXRoIChfX29iaikKewogICAgcmVzdWx0ID0gX19mdW5jKCk7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHJlc3VsdCAhPT0gMSkgewoJJEVSUk9SKCcjMTogcmVzdWx0ID09PSAxLiBBY3R1YWw6IHJlc3VsdCA9PT0nK3Jlc3VsdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A19_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIG9iamVjdCBzY29wZS4gVXNpbmcgXCJ3aXRoXCIgc3RhdGVtZW50IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYSA9IDE7Cgp2YXIgX19vYmogPSB7YToyfTsKCndpdGggKF9fb2JqKQp7CiAgICByZXN1bHQgPSAoZnVuY3Rpb24oKXtyZXR1cm4gYTt9KSgpOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChyZXN1bHQgIT09IDIpIHsKCSRFUlJPUignIzE6IHJlc3VsdCA9PT0gMi4gQWN0dWFsOiByZXN1bHQgPT09JytyZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A19_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIG9iamVjdCBzY29wZSBhbmQgdGhlbiBhbiBleGNlcHRpb24gaXMgdGhyb3duIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYSA9IDE7Cgp2YXIgX19vYmogPSB7YToyfTsKCnRyeSB7Cgl3aXRoIChfX29iaikKICAgIHsKICAgICAgICB2YXIgX19mdW5jID0gZnVuY3Rpb24gKCl7cmV0dXJuIGE7fTsKICAgICAgICB0aHJvdyAzOwogICAgfQp9IGNhdGNoIChlKSB7Cgk7Cn0KCnJlc3VsdCA9IF9fZnVuYygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAocmVzdWx0ICE9PSAyKSB7CgkkRVJST1IoJyMxOiByZXN1bHQgPT09IDIuIEFjdHVhbDogcmVzdWx0ID09PScrcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKCiB9Cn0pOwoK","id":"S13.2.2_A19_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDQuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIGhpZXJhcmNoaWNhbCBvYmplY3Qgc2NvcGUgYW5kIHRoZW4gYW4gZXhjZXB0aW9uIGlzIHRocm93biIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGEgPSAxOwoKdmFyIF9fb2JqID0ge2E6MixfX29iajp7YTozfX07Cgp0cnkgewoJd2l0aCAoX19vYmopCiAgICB7CiAgICAgICAgd2l0aChfX29iail7CiAgICAgICAgICAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe3JldHVybiBhO307CiAgICAgICAgICAgIHRocm93IDU7CiAgICAgICAgfQogICAgfQp9IGNhdGNoIChlKSB7Cgk7Cn0KCnJlc3VsdCA9IF9fZnVuYygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAocmVzdWx0ICE9PSAzKSB7CgkkRVJST1IoJyMxOiByZXN1bHQgPT09IDMuIEFjdHVhbDogcmVzdWx0ID09PScrcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKCiB9Cn0pOwoK","id":"S13.2.2_A19_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UNSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDUuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIG9iamVjdCBzY29wZSwgdGhlbiBhbiBleGNlcHRpb24gaXMgdGhyb3duIGFuZCB0aGUgb2JqZWN0IGlzIGRlbGV0ZWQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhID0gMTsKCnZhciBfX29iaiA9IHthOjJ9OwoKd2l0aCAoX19vYmopCnsKICAgIHRyeSB7CiAgICAgICAgCiAgICAJdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgIH0KICAgICAgICB0aHJvdyAzOwogICAgfSBjYXRjaCAoZSkgewogICAgCTsKICAgIH0KfQoKZGVsZXRlIF9fb2JqOwoKcmVzdWx0ID0gX19mdW5jKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChyZXN1bHQgIT09IDIpIHsKCSRFUlJPUignIzE6IHJlc3VsdCA9PT0gMi4gQWN0dWFsOiByZXN1bHQgPT09JytyZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A19_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UNiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDYuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIFwib2JqZWN0LT5kby13aGlsZVwiIHNjb3BlLCB0aGVuIHRoZSBvYmplY3QgaXMgZGVsZXRlZCBhbmQgYW5vdGhlciBvYmplY3Qgd2l0aCB0aGUgc2FtZSBuYW1lIGlzIGRlY2xhcmVkIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYSA9IDE7Cgp2YXIgX19vYmogPSB7YToyfTsKCndpdGggKF9fb2JqKQp7CiAgICBkbyB7CiAgICAgICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgIH0KICAgIH0gd2hpbGUoMCk7Cn0KCmRlbGV0ZSBfX29iajsKCnZhciBfX29iaiA9IHthOjN9OwoKd2l0aCAoX19vYmopCnsKICAgIHJlc3VsdCA9IF9fZnVuYygpOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChyZXN1bHQgIT09IDIpIHsKCSRFUlJPUignIzE6IHJlc3VsdCA9PT0gMi4gQWN0dWFsOiByZXN1bHQgPT09JytyZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgoKCgogfQp9KTsKCg==","id":"S13.2.2_A19_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UOCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDguanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgbXVsdGlwbHkgdGltZXMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMwOiB0eXBlb2YgX19mdW5jID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgYSA9IDEsIGIgPSAiYSI7Cgp2YXIgX19vYmogPSB7YToyfTsKCndpdGggKF9fb2JqKQp7CiAgICB3aGlsZSgxKXsKICAgICAgICB2YXIgIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgIH0KICAgICAgICBicmVhazsKICAgIH0KfQoKZGVsZXRlIF9fb2JqOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKCkgIT09IDIpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSAyLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0ge2E6MyxiOiJiIn07Cgp3aXRoIChfX29iaikKewogICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgIHsKICAgICAgICByZXR1cm4gYjsKICAgIH0KfQoKZGVsZXRlIF9fb2JqOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCkhPT0iYiIpIHsKCSRFUlJPUignIzI6IF9fZnVuYygpPT09ImIiLiBBY3R1YWw6IF9fZnVuYygpPT09JytfX2Z1bmMoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp3aXRoICh7YTo5OSxiOiJjIn0pCnsKICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgLy9DSEVDSyMzCiAgICBpZiAoX19mdW5jKCkgIT09ICJiIikgewogICAgCSRFUlJPUignIzM6IF9fZnVuYygpPT09ImIiLiBBY3R1YWw6IF9fZnVuYygpPT09JytfX2Z1bmMoKSk7CiAgICB9CiAgICAvLwogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCn0KCiB9Cn0pOwoK","id":"S13.2.2_A19_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0ExX1QxLmpzIiwKCmFzc2VydGlvbjogIlNpbmNlIGEgZnVuY3Rpb24gaXMgYW4gb2JqZWN0LCBpdCBtaWdodCBiZSBzZXQgdG8gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBhIG5ldyBjcmVhdGVkIG9iamVjdCB0aHJvdWdoIFtbQ29uc3RydWN0XV0gcHJvcGVydHkiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwiZnVuY3Rpb24gX19mdW5jKClcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fTU9OU1RFUj0ibW9uc3RlciI7CnZhciBfX1BSRURBVE9SPSJwcmVkYXRvciI7CgpmdW5jdGlvbiBfX1BST1RPKCl7fTsKCnRyeXsKICAgIF9fUFJPVE8udHlwZT1fX01PTlNURVI7Cn0KY2F0Y2goZSl7CiAgICAkRVJST1IoJyMwOiBfX1BST1RPLnR5cGU9X19NT05TVEVSIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJykKfQoKZnVuY3Rpb24gX19GQUNUT1JZKCl7dGhpcy5uYW1lPV9fUFJFREFUT1J9OwoKX19GQUNUT1JZLnByb3RvdHlwZT1fX1BST1RPOwoKdmFyIF9fbW9uc3RlciA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoX19QUk9UTy5pc1Byb3RvdHlwZU9mKF9fbW9uc3RlcikpKSB7CgkkRVJST1IoJyMxOiBfX1BST1RPLmlzUHJvdG90eXBlT2YoX19tb25zdGVyKSBtdXN0IGJlIHRydWUnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbW9uc3Rlci50eXBlICE9PV9fTU9OU1RFUikgewoJJEVSUk9SKCcjMjogX19tb25zdGVyLnR5cGUgPT09X19NT05TVEVSLiBBY3R1YWw6IF9fbW9uc3Rlci50eXBlID09PScrX19tb25zdGVyLnR5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0ExX1QyLmpzIiwKCmFzc2VydGlvbjogIlNpbmNlIGEgZnVuY3Rpb24gaXMgYW4gb2JqZWN0LCBpdCBtaWdodCBiZSBzZXQgdG8gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBhIG5ldyBjcmVhdGVkIG9iamVjdCB0aHJvdWdoIFtbQ29uc3RydWN0XV0gcHJvcGVydHkiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwidmFyIF9fUFJPVE8gPSBmdW5jdGlvbigpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX01PTlNURVI9Im1vbnN0ZXIiOwp2YXIgX19QUkVEQVRPUj0icHJlZGF0b3IiOwoKdmFyIF9fUFJPVE8gPSBmdW5jdGlvbigpe307Cgp0cnl7CiAgICBfX1BST1RPLnR5cGU9X19NT05TVEVSOwp9CmNhdGNoKGUpewogICAgJEZBSUwoJyMwOiBfX1BST1RPLnR5cGU9X19NT05TVEVSIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJykKfQoKdmFyIF9fRkFDVE9SWSA9IGZ1bmN0aW9uKCl7dGhpcy5uYW1lPV9fUFJFREFUT1J9OwoKX19GQUNUT1JZLnByb3RvdHlwZT1fX1BST1RPOwoKdmFyIF9fbW9uc3RlciA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoX19QUk9UTy5pc1Byb3RvdHlwZU9mKF9fbW9uc3RlcikpKSB7CgkkRVJST1IoJyMxOiBfX1BST1RPLmlzUHJvdG90eXBlT2YoX19tb25zdGVyKSBtdXN0IGJlIHRydWUnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbW9uc3Rlci50eXBlICE9PV9fTU9OU1RFUikgewoJJEVSUk9SKCcjMjogX19tb25zdGVyLnR5cGUgPT09X19NT05TVEVSLiBBY3R1YWw6IF9fbW9uc3Rlci50eXBlID09PScrX19tb25zdGVyLnR5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0EyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0EyLmpzIiwKCmFzc2VydGlvbjogIlNpbmNlIGEgZnVuY3Rpb24gaXMgYW4gb2JqZWN0LCBpdCBtaWdodCBiZSBzZXQgdG8gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBhIG5ldyBjcmVhdGVkIG9iamVjdCB0aHJvdWdoIFtbQ29uc3RydWN0XV0gcHJvcGVydHksIiwKCmRlc2NyaXB0aW9uOiAiVHJ5aW5nIHRvIFtbY2FsbF1dIHRoaXMgZnVuY3Rpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX1BMQU5UPSJmbG93ZXIiOwp2YXIgX19ST1NFPSJyb3NlIjsKCmZ1bmN0aW9uIF9fUFJPVE8oKXt9OwoKdHJ5ewogICAgX19QUk9UTy50eXBlPV9fUExBTlQ7Cn0KY2F0Y2goZSl7CiAgICAkRVJST1IoJyMwOiBfX1BST1RPLnR5cGU9X19QTEFOVCBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpCn0KCmZ1bmN0aW9uIF9fRkFDVE9SWSgpe3RoaXMubmFtZT1fX1JPU0V9OwoKX19GQUNUT1JZLnByb3RvdHlwZT1fX1BST1RPOwoKdmFyIF9fcm9zZSA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgX19yb3NlKCk7CiAgICAkRVJST1IoJyMxOiBfX3Jvc2UoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoKGUpewogICAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgIAkkRVJST1IoJyMyOiBFeGNlcHRpb24gVHlwZSBpcyBUeXBlRXJyb3IuIEFjdHVhbDogZXhjZXB0aW9uID09PScrZSk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0EzX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0EzX1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX0ZBQ1RPUlkoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt9OwpfX0ZBQ1RPUlkucHJvdG90eXBlPTE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19GQUNUT1JZLnByb3RvdHlwZSAhPT0gJ251bWJlcicpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PSBcJ251bWJlclwnLiBBY3R1YWw6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PScrKHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2RldmljZSkpKSB7CgkkRVJST1IoJyMyOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoX19kZXZpY2UpID09PSB0cnVlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0EzX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0EzX1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19GQUNUT1JZID0gZnVuY3Rpb24oKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gZnVuY3Rpb24oKXt9OwpfX0ZBQ1RPUlkucHJvdG90eXBlPTE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19GQUNUT1JZLnByb3RvdHlwZSAhPT0gJ251bWJlcicpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PSBcJ251bWJlclwnLiBBY3R1YWw6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PScrKHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2RldmljZSkpKSB7CgkkRVJST1IoJyMyOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoX19kZXZpY2UpID09PSB0cnVlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E0X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E0X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX0ZBQ1RPUlkoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19DVUJFPSJjdWJlIjsKCmZ1bmN0aW9uIF9fRkFDVE9SWSgpewp9OwpfX0ZBQ1RPUlkucHJvdG90eXBlPXsgc2hhcGU6X19DVUJFLCBwcmludFNoYXBlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hhcGU7fSB9OwoKdmFyIF9fZGV2aWNlID0gbmV3IF9fRkFDVE9SWSgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19kZXZpY2UucHJpbnRTaGFwZSA9PT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2RldmljZS5wcmludFNoYXBlICE9PSB1bmRlZmluZWQuIEFjdHVhbDogX19kZXZpY2UucHJpbnRTaGFwZSA9PT0nK19fZGV2aWNlLnByaW50U2hhcGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19kZXZpY2UucHJpbnRTaGFwZSgpICE9PSBfX0NVQkUpIHsKCSRFUlJPUignIzI6IF9fZGV2aWNlLnByaW50U2hhcGUoKSA9PT0gX19DVUJFLiBBY3R1YWw6IF9fZGV2aWNlLnByaW50U2hhcGUoKSA9PT0nK19fZGV2aWNlLnByaW50U2hhcGUoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E0X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E0X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJfX0ZBQ1RPUlkgPSBmdW5jdGlvbigpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fQ1VCRT0iY3ViZSI7CgpfX0ZBQ1RPUlkgPSBmdW5jdGlvbigpe307CgpfX0ZBQ1RPUlkucHJvdG90eXBlPXsgc2hhcGU6X19DVUJFLCBwcmludFNoYXBlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hhcGU7fSB9OwoKX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2RldmljZS5wcmludFNoYXBlID09PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZGV2aWNlLnByaW50U2hhcGUgIT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX2RldmljZS5wcmludFNoYXBlID09PScrX19kZXZpY2UucHJpbnRTaGFwZSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2RldmljZS5wcmludFNoYXBlKCkgIT09IF9fQ1VCRSkgewoJJEVSUk9SKCcjMjogX19kZXZpY2UucHJpbnRTaGFwZSgpID09PSBfX0NVQkUuIEFjdHVhbDogX19kZXZpY2UucHJpbnRTaGFwZSgpID09PScrX19kZXZpY2UucHJpbnRTaGFwZSgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E1X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E1X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX0ZBQ1RPUlkoYXJnMSwgYXJnMilcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19WT0xVTUU9ODsKX19SRUQ9InJlZCI7Cl9fSUQ9MTIzNDI7Cl9fVE9QPTEuMTsKX19CT1RUT009MC4wOwpfX0xFRlQ9MC4wOwoKCmZ1bmN0aW9uIF9fRkFDVE9SWShhcmcxLCBhcmcyKXsKCXRoaXMudm9sdW1lPV9fVk9MVU1FOwoJY29sb3I9X19SRUQ7Cgl0aGlzLmlkPWFyZzE7Cgl0b3A9YXJnMjsKCXRoaXMuYm90dG9tPWFyZ3VtZW50c1szXTsKCWxlZnQ9YXJndW1lbnRzWzRdOwp9OwoKX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKF9fSUQsIF9fVE9QLCBfX0JPVFRPTSwgX19MRUZUKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZGV2aWNlLmNvbG9yICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZGV2aWNlLmNvbG9yID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19kZXZpY2UuY29sb3IgPT09JytfX2RldmljZS5jb2xvcik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2RldmljZS52b2x1bWUgIT09IF9fVk9MVU1FKSB7CgkkRVJST1IoJyMyOiBfX2RldmljZS52b2x1bWUgPT09IF9fVk9MVU1FLiBBY3R1YWw6IF9fZGV2aWNlLnZvbHVtZSA9PT0nK19fZGV2aWNlLnZvbHVtZSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2RldmljZS50b3AgIT09IHVuZGVmaW5lZCkgewoJJEVSUk9SKCcjMzogX19kZXZpY2UudG9wID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19kZXZpY2UudG9wID09PScrX19kZXZpY2UudG9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fZGV2aWNlLmlkICE9PSBfX0lEKSB7CgkkRVJST1IoJyM0OiBfX2RldmljZS5pZCA9PT0gX19JRC4gQWN0dWFsOiBfX2RldmljZS5pZCA9PT0nK19fZGV2aWNlLmlkKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fZGV2aWNlLmxlZnQgIT09IHVuZGVmaW5lZCkgewoJJEVSUk9SKCcjNTogX19kZXZpY2UubGVmdCA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZGV2aWNlLmxlZnQgPT09JytfX2RldmljZS5sZWZ0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fZGV2aWNlLmJvdHRvbSAhPT0gX19CT1RUT00pIHsKCSRFUlJPUignIzY6IF9fZGV2aWNlLmJvdHRvbSA9PT0gX19CT1RUT00uIEFjdHVhbDogX19kZXZpY2UuYm90dG9tID09PScrX19kZXZpY2UuYm90dG9tKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E1X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E1X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJfX0ZBQ1RPUlkgPSBmdW5jdGlvbihhcmcxLCBhcmcyKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBfX1ZPTFVNRT04OwpfX1JFRD0icmVkIjsKX19JRD0xMjM0MjsKX19UT1A9MS4xOwpfX0JPVFRPTT0wLjA7Cl9fTEVGVD0wLjA7CgoKX19GQUNUT1JZID0gZnVuY3Rpb24oYXJnMSwgYXJnMil7Cgl0aGlzLnZvbHVtZT1fX1ZPTFVNRTsKCWNvbG9yPV9fUkVEOwoJdGhpcy5pZD1hcmcxOwoJdG9wPWFyZzI7Cgl0aGlzLmJvdHRvbT1hcmd1bWVudHNbM107CglsZWZ0PWFyZ3VtZW50c1s0XTsKfTsKCl9fZGV2aWNlID0gbmV3IF9fRkFDVE9SWShfX0lELCBfX1RPUCwgX19CT1RUT00sIF9fTEVGVCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2RldmljZS5jb2xvciAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2RldmljZS5jb2xvciA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZGV2aWNlLmNvbG9yID09PScrX19kZXZpY2UuY29sb3IpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19kZXZpY2Uudm9sdW1lICE9PSBfX1ZPTFVNRSkgewoJJEVSUk9SKCcjMjogX19kZXZpY2Uudm9sdW1lID09PSBfX1ZPTFVNRS4gQWN0dWFsOiBfX2RldmljZS52b2x1bWUgPT09JytfX2RldmljZS52b2x1bWUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19kZXZpY2UudG9wICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzM6IF9fZGV2aWNlLnRvcCA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZGV2aWNlLnRvcCA9PT0nK19fZGV2aWNlLnRvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2RldmljZS5pZCAhPT0gX19JRCkgewoJJEVSUk9SKCcjNDogX19kZXZpY2UuaWQgPT09IF9fSUQuIEFjdHVhbDogX19kZXZpY2UuaWQgPT09JytfX2RldmljZS5pZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX2RldmljZS5sZWZ0ICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzU6IF9fZGV2aWNlLmxlZnQgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX2RldmljZS5sZWZ0ID09PScrX19kZXZpY2UubGVmdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX2RldmljZS5ib3R0b20gIT09IF9fQk9UVE9NKSB7CgkkRVJST1IoJyM2OiBfX2RldmljZS5ib3R0b20gPT09IF9fQk9UVE9NLiBBY3R1YWw6IF9fZGV2aWNlLmJvdHRvbSA9PT0nK19fZGV2aWNlLmJvdHRvbSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A5_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E2X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E2X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJfX2Z1bmMgPSBmdW5jdGlvbihhcmcpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRk9PPSJmb29WYWx1ZSI7Cl9fQkFSPSJiYXJWYWx1ZSI7CgpfX2Z1bmMgPSBmdW5jdGlvbihhcmcpewoJdGhpcy5mb289YXJnOwogICAgcmV0dXJuIDA7Cgl0aGlzLmJhcj1hcmd1bWVudHNbMV07Cn07CgpfX29iaiA9IG5ldyBfX2Z1bmMoX19GT08sIF9fQkFSKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLmZvbyE9PV9fRk9PKSB7CgkkRVJST1IoJyMxOiBfX29iai5mb28gPT09IF9fRk9PLiBBY3R1YWw6IF9fb2JqLmZvbz09PScrX19vYmouZm9vKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLmJhciE9PXVuZGVmaW5lZCkgewoJJEVSUk9SKCcjMjogX19vYmouYmFyID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19vYmouYmFyPT09JytfX29iai5iYXIpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A6_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E2X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E2X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMgKGFyZylcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRk9PPSJmb29WYWx1ZSI7CnZhciBfX0JBUj0iYmFyVmFsdWUiOwoKZnVuY3Rpb24gX19mdW5jIChhcmcpewoJdGhpcy5mb289YXJnOwogICAgcmV0dXJuIHRydWU7Cgl0aGlzLmJhcj1hcmd1bWVudHNbMV07Cn07Cgp2YXIgX19vYmogPSBuZXcgX19mdW5jKF9fRk9PLCBfX0JBUik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai5mb28hPT1fX0ZPTykgewoJJEVSUk9SKCcjMTogX19vYmouZm9vID09PSBfX0ZPTy4gQWN0dWFsOiBfX29iai5mb289PT0nK19fb2JqLmZvbyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX29iai5iYXIhPT11bmRlZmluZWQpIHsKCSRFUlJPUignIzI6IF9fb2JqLmJhciA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fb2JqLmJhcj09PScrX19vYmouYmFyKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A6_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E3X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E3X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJhcyBfX2Z1bmMgPSBmdW5jdGlvbihhcmcpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZSU1Q9Im9uZSI7CnZhciBfX1NDTkQ9InR3byI7CgpmdW5jdGlvbiBfX2Z1bmMgKGFyZzEsIGFyZzIpewoJdGhpcy5maXJzdD1hcmcxOwoJdmFyIF9fb2JqPXtzZWNvbmQ6YXJnMn07CiAgICByZXR1cm4gX19vYmo7CgkKfTsKCnZhciBfX29ial9fID0gbmV3IF9fZnVuYyhfX0ZSU1QsIF9fU0NORCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29ial9fLmZpcnN0ICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fb2JqX18uZmlyc3QgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX29ial9fLmZpcnN0PT09JytfX29ial9fLmZpcnN0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqX18uc2Vjb25kICE9PSBfX1NDTkQpIHsKCSRFUlJPUignIzI6IF9fb2JqX18uc2Vjb25kID09PSBfX1NDTkQuIEFjdHVhbDogX19vYmpfXy5zZWNvbmQgPT09JytfX29ial9fLnNlY29uZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A7_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E3X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E3X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIFwiZnVuY3Rpb24gYXMgZnVuY3Rpb24gX19mdW5jIChhcmcpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRlJTVD0ib25lIjsKX19TQ05EPSJ0d28iOwoKX19mdW5jID0gZnVuY3Rpb24oYXJnMSwgYXJnMil7Cgl0aGlzLmZpcnN0PWFyZzE7Cgl2YXIgX19vYmo9e3NlY29uZDphcmcyfTsKICAgIHJldHVybiBfX29iajsKCQp9OwoKX19vYmpfXyA9IG5ldyBfX2Z1bmMoX19GUlNULCBfX1NDTkQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19vYmpfXy5maXJzdCAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX29ial9fLmZpcnN0ID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19vYmpfXy5maXJzdD09PScrX19vYmpfXy5maXJzdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX29ial9fLnNlY29uZCAhPT0gX19TQ05EKSB7CgkkRVJST1IoJyMyOiBfX29ial9fLnNlY29uZCA9PT0gX19TQ05ELiBBY3R1YWw6IF9fb2JqX18uc2Vjb25kID09PScrX19vYmpfXy5zZWNvbmQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A7_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E4X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E4X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2hvc2UgcHJvdG90eXBlIGNvbnRhaW5zIFwicmV0dXJuXCIgZm9sbG93ZWQgYnkgZGVjbGFyYXRpb24gb2YgYW5vdGhlciBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRlJTVD0ib25lIjsKdmFyIF9fU0NORD0idHdvIjsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbihhcmcxLCBhcmcyKXsKCXRoaXMuZmlyc3Q9YXJnMTsKCQoJX19ndW5jLnByb3A9YXJnMjsKICAgIHJldHVybiBfX2d1bmM7CiAgICAvLyBmdW5jdGlvbiBkZWNsYXJhdGlvbgogICAgZnVuY3Rpb24gX19ndW5jKGFyZyl7cmV0dXJuICsrYXJnfTsKCQp9OwoKdmFyIF9faW5zdGFuY2UgPSBuZXcgX19mdW5jKF9fRlJTVCwgX19TQ05EKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UuZmlyc3QgIT09IHVuZGVmaW5lZCkgewoJJEVSUk9SKCcjMTogX19pbnN0YW5jZS5maXJzdCA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9faW5zdGFuY2UuZmlyc3QgPT09JytfX2luc3RhbmNlLmZpcnN0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9faW5zdGFuY2UucHJvcCE9PV9fU0NORCkgewoJJEVSUk9SKCcjMjogX19pbnN0YW5jZS5wcm9wID09PSBfX1NDTkQuIEFjdHVhbDogX19pbnN0YW5jZS5wcm9wID09PScrX19pbnN0YW5jZS5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9faW5zdGFuY2UoMSkhPT0gMikgewoJJEVSUk9SKCcjMjogX19pbnN0YW5jZSgxKT09PSAyLiBBY3R1YWw6IF9faW5zdGFuY2UoMSkgPT09JytfX2luc3RhbmNlKDEpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.2_A8_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E4X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E4X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2hvc2UgcHJvdG90eXBlIGNvbnRhaW5zIGRlY2xhcmF0aW9uIG9mIGFub3RoZXIgZnVuY3Rpb24gZGVjbGFyZWQgYXMgYSB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRlJTVD0ib25lIjsKdmFyIF9fU0NORD0idHdvIjsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbihhcmcxLCBhcmcyKXsKCXRoaXMuZmlyc3Q9YXJnMTsKCXZhciBfX2d1bmMgPSBmdW5jdGlvbihhcmcpe3JldHVybiBhcmcrPSJCQSJ9OwoJX19ndW5jLnByb3A9YXJnMjsKICAgIHJldHVybiBfX2d1bmM7CgkKfTsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fZnVuYyhfX0ZSU1QsIF9fU0NORCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmZpcnN0ICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9faW5zdGFuY2UuZmlyc3QgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX2luc3RhbmNlLmZpcnN0ID09PScrX19pbnN0YW5jZS5maXJzdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2luc3RhbmNlLnByb3AhPT1fX1NDTkQpIHsKCSRFUlJPUignIzI6IF9faW5zdGFuY2UucHJvcCA9PT0gX19TQ05ELiBBY3R1YWw6IF9faW5zdGFuY2UucHJvcCA9PT0nK19faW5zdGFuY2UucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2luc3RhbmNlKCJTQU0iKSE9PSAiU0FNQkEiKSB7CgkkRVJST1IoJyMyOiBfX2luc3RhbmNlKCJTQU0iKSA9PT0gIlNBTUJBIi4gQWN0dWFsOiBfX2luc3RhbmNlKCJTQU0iKSA9PT0nK19faW5zdGFuY2UoIlNBTSIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.2_A8_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E4X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E4X1QzLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2hvc2UgcHJvdG90eXBlIGNvbnRhaW5zIGRlY2xhcmF0aW9uIG9mIGFub3RoZXIgZnVuY3Rpb24gZGVmaW5lZCBieSB1c2luZyBGdW5jdGlvbi5jYWxsIG1ldGhvZCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRlJTVD0ib25lIjsKdmFyIF9fU0NORD0idHdvIjsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbihhcmcxLCBhcmcyKXsKCXRoaXMuZmlyc3Q9YXJnMTsKCXZhciBfX2d1bmMgPSBGdW5jdGlvbi5jYWxsKHRoaXMsImFyZyIsInJldHVybiArK2FyZzsiKTsKCV9fZ3VuYy5wcm9wPWFyZzI7CiAgICByZXR1cm4gX19ndW5jOwoJCn07Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX2Z1bmMoX19GUlNULCBfX1NDTkQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5maXJzdCAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2luc3RhbmNlLmZpcnN0ID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19pbnN0YW5jZS5maXJzdCA9PT0nK19faW5zdGFuY2UuZmlyc3QpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19pbnN0YW5jZS5wcm9wIT09X19TQ05EKSB7CgkkRVJST1IoJyMyOiBfX2luc3RhbmNlLnByb3AgPT09IF9fU0NORC4gQWN0dWFsOiBfX2luc3RhbmNlLnByb3AgPT09JytfX2luc3RhbmNlLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19pbnN0YW5jZSgxKSE9PSAyKSB7CgkkRVJST1IoJyMyOiBfX2luc3RhbmNlKDEpPT09IDIuIEFjdHVhbDogX19pbnN0YW5jZSgxKSA9PT0nK19faW5zdGFuY2UoMSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13.2.2_A8_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E5IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E5LmpzIiwKCmFzc2VydGlvbjogIkNhbGxpbmcgYSBmdW5jdGlvbiBhcyBhIGNvbnN0cnVjdG9yIGlzIGluYWRtaXNzaWJsZSBhcyBsb25nIGFzIHRoaXMuYW55X0Z1bmN0aW9uIGlzIGNhbGxlZCBiZWZvcmUgaXQgaXMgZGVjbGFyZWQiLAoKZGVzY3JpcHRpb246ICJDYWxsaW5nIGEgZnVuY3Rpb24gYXMgYSBjb25zdHJ1Y3RvciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gRkFDVE9SWSgpewogICB0aGlzLmlkID0gMDsKICAgCiAgIHRoaXMuaWQgPSB0aGlzLmZ1bmMoKTsKICAgCiAgIHRoaXMuZnVuYyA9IGZ1bmN0aW9uICgpewogICAgICByZXR1cm4gNTsKICAgfQogIAp9Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKCXZhciBvYmogPSBuZXcgRkFDVE9SWSgpOwoJJEVSUk9SKCcjMTogdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkge30KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMV9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTFfVDEuanMiLAoKYXNzZXJ0aW9uOiAiQSBcInByb3RvdHlwZVwiIHByb3BlcnR5IGlzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBmb3IgZXZlcnkgZnVuY3Rpb24iLAoKZGVzY3JpcHRpb246ICJVc2luZyBcImZ1bmN0aW9uIF9fZnVuYygpe31cIiBhcyBhIEZ1bmN0aW9uRGVjbGFyYXRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMucHJvdG90eXBlID09PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYy5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMV9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTFfVDIuanMiLAoKYXNzZXJ0aW9uOiAiQSBcInByb3RvdHlwZVwiIHByb3BlcnR5IGlzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBmb3IgZXZlcnkgZnVuY3Rpb24iLAoKZGVzY3JpcHRpb246ICJVc2luZyBcInZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe31cIiBhcyBhIEZ1bmN0aW9uRGVjbGFyYXRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMucHJvdG90eXBlID09PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYy5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMl9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTJfVDEuanMiLAoKYXNzZXJ0aW9uOiAiTmVzdGVkIGZ1bmN0aW9uIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIk5lc3RpbmcgbGV2ZWwgaXMgdHdvIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19KRURJPSJqZWRpIjsKCmZ1bmN0aW9uIF9fRlVOQygpewogICAgZnVuY3Rpb24gX19HVU5DKCl7CiAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1swXTsKICAgIH07CiAgICAKICAgIHJldHVybiBfX0dVTkM7Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX0ZVTkMoKShfX0pFREkpICE9PSBfX0pFREkpIHsKCSRFUlJPUignIzE6IF9fRlVOQygpKF9fSkVESSkgPT09IF9fSkVESS4gQWN0dWFsOiBfX0ZVTkMoKShfX0pFREkpID09PScrX19GVU5DKCkoX19KRURJKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMl9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTJfVDIuanMiLAoKYXNzZXJ0aW9uOiAiTmVzdGVkIGZ1bmN0aW9uIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIk5lc3RpbmcgbGV2ZWwgaXMgdGhyZWUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX1JPQk9UPSJDM1BPIjsKCmZ1bmN0aW9uIF9fRlVOQygpewogICAgZnVuY3Rpb24gX19HVU5DKCl7CiAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1swXTsKICAgIH07CiAgICBmdW5jdGlvbiBfX0hVTkMoKXsKICAgICAgICByZXR1cm4gX19HVU5DOwogICAgfTsKICAgIHJldHVybiBfX0hVTkM7Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX0ZVTkMoKSgpKF9fUk9CT1QpICE9PSBfX1JPQk9UKSB7CgkkRVJST1IoJyMxOiBfX0ZVTkMoKSgpKF9fUk9CT1QpID09PSBfX1JPQk9ULiBBY3R1YWw6IF9fRlVOQygpKCkoX19ST0JPVCkgPT09JytfX0ZVTkMoKSgpKF9fUk9CT1QpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTMuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBGIGlzIHNldCB0byB0aGUgbnVtYmVyIG9mIGZvcm1hbCBwcm9wZXJ0aWVzIHNwZWNpZmllZCBpbiBGb3JtYWxQYXJhbWV0ZXJMaXN0IiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgZnVuY3Rpb25zIHdpdGggdmFyaW91cyBGb3JtYWxQYXJhbWV0ZXJMaXN0IGFuZCBjaGVja2luZyB0aGVpciBsZW5ndGhzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jLmxlbmd0aCAhPT0gMCkgewoJJEVSUk9SKCcjMTogX19mdW5jLmxlbmd0aCA9PT0gMC4gQWN0dWFsOiBfX2Z1bmMubGVuZ3RoID09PScrX19mdW5jLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2d1bmMoYSxiLGMpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2d1bmMubGVuZ3RoICE9PSAzKSB7CgkkRVJST1IoJyMyOiBfX2d1bmMubGVuZ3RoID09PSAzLiBBY3R1YWw6IF9fZ3VuYy5sZW5ndGggPT09JytfX2d1bmMubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BNF9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTRfVDEuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQgdGhlIGZvbGxvd2luZyBzdGVwcyBmcm9tIDkgdG8gMTEgdGFrZSBwbGFjZSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIHByb3RvdHlwZSwgcHJvdG90eXBlLmNvbnN0cnVjdG9yIHByb3BlcnRpZXMgYW5kIHtEb250RW51bX0gcHJvcGVydHkgb2YgYSBjb25zdHJ1Y3Rvci4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jLnByb3RvdHlwZSAhPT0gJ29iamVjdCcpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMucHJvdG90eXBlID09PSBcJ29iamVjdFwnLiBBY3R1YWw6IHR5cGVvZiBfX2d1bmMucHJvdG90eXBlID09PScrdHlwZW9mIF9fZ3VuYy5wcm90b3R5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciAhPT0gX19mdW5jKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMucHJvdG90eXBlLmNvbnN0cnVjdG9yID09PSBfX2Z1bmMuIEFjdHVhbDogX19ndW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0nK19fZ3VuYy5wcm90b3R5cGUuY29uc3RydWN0b3IpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQ7Cgpmb3IgKF9fcHJvcCBpbiBfX2Z1bmMucHJvdG90eXBlKXsKICAgIGlmIChfX3Byb3AgPSAnY29uc3RydWN0b3InKQogICAgICAgIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQgPSB0cnVlOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkKSB7CgkkRVJST1IoJyMzOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PSBmYWxzZS4gQWN0dWFsOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PScrX19jb25zdHJ1Y3Rvcl93YXNfX2VudW1lZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKCgoKCiB9Cn0pOwoK","id":"S13.2_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BNF9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTRfVDIuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQgdGhlIGZvbGxvd2luZyBzdGVwcyBmcm9tIDkgdG8gMTEgdGFrZSBwbGFjZSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIHByb3RvdHlwZSwgcHJvdG90eXBlLmNvbnN0cnVjdG9yIHByb3BlcnRpZXMgYW5kIHtEb250RW51bX0gcHJvcGVydHkgb2YgYSBjb25zdHJ1Y3Rvci4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2d1bmMgPSBmdW5jdGlvbigpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19ndW5jLnByb3RvdHlwZSAhPT0gJ29iamVjdCcpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2d1bmMucHJvdG90eXBlID09PSBcJ29iamVjdFwnLiBBY3R1YWw6IHR5cGVvZiBfX2d1bmMucHJvdG90eXBlID09PScrdHlwZW9mIF9fZ3VuYy5wcm90b3R5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19ndW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciAhPT0gX19ndW5jKSB7CgkkRVJST1IoJyMyOiBfX2d1bmMucHJvdG90eXBlLmNvbnN0cnVjdG9yID09PSBfX2d1bmMuIEFjdHVhbDogX19ndW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0nK19fZ3VuYy5wcm90b3R5cGUuY29uc3RydWN0b3IpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQ7Cgpmb3IgKF9fcHJvcCBpbiBfX2d1bmMucHJvdG90eXBlKXsKICAgIGlmIChfX3Byb3AgPSAnY29uc3RydWN0b3InKQogICAgICAgIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQgPSB0cnVlOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkKSB7CgkkRVJST1IoJyMzOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PSBmYWxzZS4gQWN0dWFsOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PScrX19jb25zdHJ1Y3Rvcl93YXNfX2VudW1lZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKCgoKCiB9Cn0pOwoK","id":"S13.2_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BNSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTUuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQiLAoKZGVzY3JpcHRpb246ICJGdW5jdGlvbi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZigpIGlzIHVzZWQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKEZ1bmN0aW9uLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9fZnVuYykpKSB7CgkkRVJST1IoJyMxOiBGdW5jdGlvbi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2Z1bmMpJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKdmFyIF9fZ3VuYyA9IGZ1bmN0aW9uKCl7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoRnVuY3Rpb24ucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoX19ndW5jKSkpIHsKCSRFUlJPUignIzE6IEZ1bmN0aW9uLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9fZ3VuYyknKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKIH0KfSk7Cgo=","id":"S13.2_A5"}]}} \ No newline at end of file +{"testsCollection":{"name":"Chapter - 13_Function_Definition","numTests":"107","tests":[{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTEuanMiLAoKYXNzZXJ0aW9uOiAiXCJ4PWZ1bmN0aW9uIHkoKXt9XCIgc3RhdGVtZW50IGRvZXMgbm90IHN0b3JlIGEgcmVmZXJlbmNlIHRvIHRoZSBuZXcgZnVuY3Rpb24gaW4gdGhlIHZhcmFpYmxlIHkoSWRlbnRpZmllcikiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyB0aGUgdHlwZSBvZiB5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19mdW5jID0gZnVuY3Rpb24gX19leHBfX2Z1bmMoKXtyZXR1cm4gMDt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICh0eXBlb2YgX19leHBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKXsKICAgICRFUlJPUignIzI6IHR5cGVvZiBfX2V4cF9fZnVuYyA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIF9fZXhwX19mdW5jID09PScrdHlwZW9mIF9fZXhwX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTAiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMC5qcyIsCgphc3NlcnRpb246ICJGdW5jdGlvbiBpcyBhIGRhdGEiLAoKZGVzY3JpcHRpb246ICJVc2luZyBmdW5jdGlvbiBhcyBhIHByb3BlcnR5IG9mIGFuIG9iamVjdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX196aWdneV9fZnVuYygpe3JldHVybiAiemlnZ3kgc3RhcmR1c3QifQoKdmFyIF9fbXVzaWNfYm94PXt9OwoKX19tdXNpY19ib3guemlnZ3kgPSBfX3ppZ2d5X19mdW5jOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCmlmICh0eXBlb2YgX19tdXNpY19ib3guemlnZ3kgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX211c2ljX2JveC56aWdneSA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19tdXNpY19ib3guemlnZ3kgPT09Jyt0eXBlb2YgX19tdXNpY19ib3guemlnZ3kpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19tdXNpY19ib3guemlnZ3koKSAhPT0gInppZ2d5IHN0YXJkdXN0IikgewoJJEVSUk9SKCcjMjogX19tdXNpY19ib3guemlnZ3koKSA9PT0gInppZ2d5IHN0YXJkdXN0Ii4gQWN0dWFsOiBfX211c2ljX2JveC56aWdneSgpID09PScrX19tdXNpY19ib3guemlnZ3koKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTFfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMV9UMS5qcyIsCgphc3NlcnRpb246ICJTaW5jZSBhcmd1bWVudHMgcHJvcGVydHkgaGFzIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSwgb25seSBpdHMgZWxlbWVudHMgY2FuIGJlIGRlbGV0ZWQiLAoKZGVzY3JpcHRpb246ICJSZXR1cm5pbmcgcmVzdWx0IG9mIFwiZGVsZXRlIGFyZ3VtZW50c1wiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsgcmV0dXJuIGRlbGV0ZSBhcmd1bWVudHM7fQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKCJBIiwiQiIsMSwyKSkgewoJJEVSUk9SKCcjMTogYXJndW1lbnRzIHByb3BlcnR5IGhhcyBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0nKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A11_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTFfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMV9UMi5qcyIsCgphc3NlcnRpb246ICJTaW5jZSBhcmd1bWVudHMgcHJvcGVydHkgaGFzIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSwgb25seSBpdHMgZWxlbWVudHMgY2FuIGJlIGRlbGV0ZWQiLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyB0aGUgYXJndW1lbnRzIHByb3BlcnR5IGZhaWxzIGFuZCB0aGVuIHJldHVybmluZyBpdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7IAogICAgZGVsZXRlIGFyZ3VtZW50czsKICAgIHJldHVybiBhcmd1bWVudHM7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMoIkEiLCJCIiwxLDIpICE9PSAib2JqZWN0IikgewoJJEVSUk9SKCcjMTogYXJndW1lbnRzIHByb3BlcnR5IGhhcyBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0nKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A11_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTFfVDMiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMV9UMy5qcyIsCgphc3NlcnRpb246ICJTaW5jZSBhcmd1bWVudHMgcHJvcGVydHkgaGFzIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSwgb25seSBpdHMgZWxlbWVudHMgY2FuIGJlIGRlbGV0ZWQiLAoKZGVzY3JpcHRpb246ICJEZWxldGluZyBhcmd1bWVudHNbaV0gYW5kIHJldHVybmluZyByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7CiAgICB3YXNfZGVsPWZhbHNlOwogICAgZm9yIChpPTA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspCiAgICAgICB3YXNfZGVsPSB3YXNfZGVsIHx8IGRlbGV0ZSBhcmd1bWVudHNbaV07CiAgICByZXR1cm4gd2FzX2RlbDsKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIV9fZnVuYygiQSIsIkIiLDEsMikpIHsKCSRFUlJPUignIzE6IFNpbmNlIGFyZ3VtZW50cyBwcm9wZXJ0eSBoYXMgYXR0cmlidXRlIHsgRG9udERlbGV0ZSB9IGVsZW1lbnRzIG9mIGFyZ3VtZW50cyBjYW4gYmUgZGVsZXRlZCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A11_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTFfVDQiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMV9UNC5qcyIsCgphc3NlcnRpb246ICJTaW5jZSBhcmd1bWVudHMgcHJvcGVydHkgaGFzIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSwgb25seSBpdHMgZWxlbWVudHMgY2FuIGJlIGRlbGV0ZWQiLAoKZGVzY3JpcHRpb246ICJEZWxldGluZyBhcmd1bWVudHNbaV0gYW5kIGNoZWNraW5nIHRoZSB0eXBlIG9mIGFyZ3VtZW50c1tpXSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7CiAgICBpc191bmRlZj10cnVlOwogICAgZm9yIChpPTA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspCiAgICB7CiAgICAgICAgZGVsZXRlIGFyZ3VtZW50c1tpXTsKICAgICAgICBpc191bmRlZj0gaXNfdW5kZWYgJiYgKHR5cGVvZiBhcmd1bWVudHNbaV0gPT09ICJ1bmRlZmluZWQiKTsKICAgIH07ICAgICAgIAogICAgcmV0dXJuIGlzX3VuZGVmOwp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIV9fZnVuYygiQSIsIkIiLDEsMikpIHsKCSRFUlJPUignIzE6IFNpbmNlIGFyZ3VtZW50cyBwcm9wZXJ0eSBoYXMgYXR0cmlidXRlIHsgRG9udERlbGV0ZSB9LCBidXQgZWxlbWVudHMgb2YgYXJndW1lbnRzIGNhbiBiZSBkZWxldGVkJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A11_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTJfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMl9UMS5qcyIsCgphc3NlcnRpb246ICJGdW5jdGlvbiBkZWNsYXJhdGlvbnMgaW4gZ2xvYmFsIG9yIGZ1bmN0aW9uIHNjb3BlIGFyZSB7RG9udERlbGV0ZX0iLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyBhIGZ1bmN0aW9uIHRoYXQgaXMgZGVjbGFyZWQgaW4gZ2xvYmFsIHNjb3BlIGZhaWxzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBBTElWRT0iTGV0b3YgaXMgYWxpdmUiCgpmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHJldHVybiBBTElWRTsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGRlbGV0ZSBfX2Z1bmMpIHsKCSRFUlJPUignIzE6IGRlbGV0ZSBfX2Z1bmMgcmV0dXJuaW5nIGZhbHNlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2Z1bmMoKSAhPT0gQUxJVkUpIHsKCSRFUlJPUignIzI6IF9fZnVuYygpID09PSBBTElWRS4gQWN0dWFsOiBfX2Z1bmMoKSA9PT0nK19fZnVuYygpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A12_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTJfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExMl9UMi5qcyIsCgphc3NlcnRpb246ICJGdW5jdGlvbiBkZWNsYXJhdGlvbnMgaW4gZ2xvYmFsIG9yIGZ1bmN0aW9uIHNjb3BlIGFyZSB7RG9udERlbGV0ZX0iLAoKZGVzY3JpcHRpb246ICJDaGVja2luZyBpZiBkZWxldGluZyBhIGZ1bmN0aW9uIHRoYXQgaXMgZGVjbGFyZWQgaW4gZnVuY3Rpb24gc2NvcGUgZmFpbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIEFMSVZFPSJMZXRvdiBpcyBhbGl2ZSIKCmZ1bmN0aW9uIF9fY29udCgpewoKICAgIGZ1bmN0aW9uIF9fZnVuYygpewogICAgICAgIHJldHVybiBBTElWRTsKICAgIH07CiAgICAKICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgLy9DSEVDSyMxCiAgICBpZiAoZGVsZXRlIF9fZnVuYykgewogICAgCSRFUlJPUignIzE6IGRlbGV0ZSBfX2Z1bmMgcmV0dXJuaW5nIGZhbHNlJyk7CiAgICB9CiAgICAvLwogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAgICAKICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgLy9DSEVDSyMyCiAgICBpZiAoX19mdW5jKCkgIT09IEFMSVZFKSB7CiAgICAJJEVSUk9SKCcjMjogX19mdW5jKCkgPT09IEFMSVZFLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwogICAgfQogICAgLy8KICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwp9OwoKX19jb250KCk7CgogfQp9KTsKCg==","id":"S13.0_A12_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTNfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExM19UMS5qcyIsCgphc3NlcnRpb246ICJEZWxldGluZyBhcmd1bWVudHNbaV0gbGVhZHMgdG8gYnJlYWtpbmcgdGhlIGNvbm5lY3Rpb24gdG8gbG9jYWwgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiRGVsZXRpbmcgYXJndW1lbnRzW2ldIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoX19hcmcpewogIGRlbGV0ZSBhcmd1bWVudHNbMF07CiAgaWYgKGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkKSB7CiAgICAkRVJST1IoJyMxLjE6IGFyZ3VtZW50c1swXSA9PT0gdW5kZWZpbmVkJyk7CiAgfQogIHJldHVybiBfX2FyZzsKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKDEpICE9PSAxKSB7CgkkRVJST1IoJyMxLjI6IF9fZnVuYygxKSA9PT0gMS4gQWN0dWFsOiBfX2Z1bmMoMSkgPT09JytfX2Z1bmMoMSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A13_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTNfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExM19UMi5qcyIsCgphc3NlcnRpb246ICJEZWxldGluZyBhcmd1bWVudHNbaV0gbGVhZHMgdG8gYnJlYWtpbmcgdGhlIGNvbm5lY3Rpb24gdG8gbG9jYWwgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdpbmcgYXJndW1lbnRzIHZhbHVlIGFuZCB0aGVuIGRlbGV0aW5nIHRoZSBhcmd1bWVudCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKF9fYXJnKXsKICBfX2FyZyA9IDI7CiAgZGVsZXRlIGFyZ3VtZW50c1swXTsKICBpZiAoYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQpIHsKICAgICRFUlJPUignIzEuMTogYXJndW1lbnRzWzBdID09PSB1bmRlZmluZWQnKTsKICB9CiAgcmV0dXJuIF9fYXJnOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoMSkgIT09IDIpIHsKCSRFUlJPUignIzEuMjogX19mdW5jKDEpID09PSAyLiBBY3R1YWw6IF9fZnVuYygxKSA9PT0nK19fZnVuYygxKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A13_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTNfVDMiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExM19UMy5qcyIsCgphc3NlcnRpb246ICJEZWxldGluZyBhcmd1bWVudHNbaV0gbGVhZHMgdG8gYnJlYWtpbmcgdGhlIGNvbm5lY3Rpb24gdG8gbG9jYWwgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQ2hhbmdpbmcgYXJndW1lbnQgdmFsdWUsIGRlbGV0aW5nIHRoZSBhcmd1bWVudCBhbmQgdGhlbiBkZWZpbmluZyBhIG5ldyB2YWx1ZSBmb3IgYXJndW1lbnRzW2ldIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoX19hcmcpewogIF9fYXJnID0gMjsKICBkZWxldGUgYXJndW1lbnRzWzBdOwogIGlmIChhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCkgewogICAgJEVSUk9SKCcjMS4xOiBhcmd1bWVudHNbMF0gPT09IHVuZGVmaW5lZCcpOwogIH0KICBhcmd1bWVudHNbMF0gPSAiQSI7CiAgaWYgKGFyZ3VtZW50c1swXSAhPT0gIkEiKSB7CiAgICAkRVJST1IoJyMxLjI6IGFyZ3VtZW50c1swXSA9PT0gIkEiJyk7CiAgfQogIHJldHVybiBfX2FyZzsKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKDEpICE9PSAyKSB7CgkkRVJST1IoJyMxLjM6IF9fZnVuYygxKSA9PT0gMi4gQWN0dWFsOiBfX2Z1bmMoMSkgPT09JytfX2Z1bmMoMSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A13_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTQiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNC5qcyIsCgphc3NlcnRpb246ICJVbmljb2RlIHN5bWJvbHMgaW4gZnVuY3Rpb24gbmFtZSBhcmUgYWxsb3dlZCIsCgpkZXNjcmlwdGlvbjogIkRlZmluaW5nIGZ1bmN0aW9uIG5hbWUgd2l0aCB1bmljb2RlIHN5bWJvbHMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGV2YWwoImZ1bmN0aW9uIF9fZnVuY1x1MDA0MShfX2FyZyl7cmV0dXJuIF9fYXJnO307Iik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jQSAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMTogdW5pY29kZSBzeW1ib2xzIGluIGZ1bmN0aW9uIG5hbWUgYXJlIGFsbG93ZWQnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTVfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNV9UMS5qcyIsCgphc3NlcnRpb246ICJcJ1wnYXJndW1lbnRzXCdcJyB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwiX19mdW5jKGFyZ3VtZW50cylcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKGFyZ3VtZW50cyl7CiAgICByZXR1cm4gYXJndW1lbnRzOwp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKDQyKSAhPT0gNDIpIHsKCSRFUlJPUignIzE6ICJhcmd1bWVudHMiIHZhcmlhYmxlIG92ZXJyaWRlcyBBY3RpdmF0aW9uT2JqZWN0LmFyZ3VtZW50cycpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A15_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTVfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNV9UMi5qcyIsCgphc3NlcnRpb246ICJcJ1wnYXJndW1lbnRzXCdcJyB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMiLAoKZGVzY3JpcHRpb246ICJPdmVycmlkaW5nIGFyZ3VtZW50cyB3aXRoaW4gZnVuY3Rpb25zIGJvZHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIFRIRV9BTlNXRVI9IkFuc3dlciB0byBMaWZlLCB0aGUgVW5pdmVyc2UsIGFuZCBFdmVyeXRoaW5nIjsKCmZ1bmN0aW9uIF9fZnVuYygpewogICAgdmFyIGFyZ3VtZW50cyA9IFRIRV9BTlNXRVI7CiAgICByZXR1cm4gYXJndW1lbnRzOwp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKDQyLDQyLDQyKSAhPT0gVEhFX0FOU1dFUikgewoJJEVSUk9SKCcjMTogICJhcmd1bWVudHMiIHZhcmlhYmxlIG92ZXJyaWRlcyBBY3RpdmF0aW9uT2JqZWN0LmFyZ3VtZW50cycpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A15_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTVfVDMiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNV9UMy5qcyIsCgphc3NlcnRpb246ICJcJ1wnYXJndW1lbnRzXCdcJyB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSB2YXJpYWJsZSBuYW1lZCB3aXRoIFwiYXJndW1lbnRzXCIgd2l0aG91dCBhIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBUSEVfQU5TV0VSPSJBbnN3ZXIgdG8gTGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgRXZlcnl0aGluZyI7Cgp2YXIgYXJndW1lbnRzID0gVEhFX0FOU1dFUjsKCmZ1bmN0aW9uIF9fZnVuYyhhcmd1bWVudHMpewogICAgcmV0dXJuIGFyZ3VtZW50czsKICAgIAp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZnVuYygpICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIF9fZnVuYygpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jKCkgPT09Jyt0eXBlb2YgX19mdW5jKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCJUaGUgVWx0aW1hdGUgUXVlc3Rpb24iKSAhPT0gIlRoZSBVbHRpbWF0ZSBRdWVzdGlvbiIpIHsKCSRFUlJPUignIzI6IF9fZnVuYygiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIikgPT09ICJUaGUgVWx0aW1hdGUgUXVlc3Rpb24iLiBBY3R1YWw6IF9fZnVuYygiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIik9PT0nK19fZnVuYygiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIikpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A15_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTVfVDQiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNV9UNC5qcyIsCgphc3NlcnRpb246ICJcJ1wnYXJndW1lbnRzXCdcJyB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSB2YXJpYWJsZSBuYW1lZCB3aXRoIFwiYXJndW1lbnRzXCIgYW5kIGZvbGxvd2luZyBhIFwicmV0dXJuXCIgc3RhdGVtZW50IHdpdGhpbiBhIGZ1bmN0aW9uIGJvZHkiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIFRIRV9BTlNXRVI9IkFuc3dlciB0byBMaWZlLCB0aGUgVW5pdmVyc2UsIGFuZCBFdmVyeXRoaW5nIjsKCmZ1bmN0aW9uIF9fZnVuYygpewogICAgcmV0dXJuIHR5cGVvZiBhcmd1bWVudHM7CiAgICB2YXIgYXJndW1lbnRzID0gVEhFX0FOU1dFUjsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYyg0Miw0Miw0MikgIT09ICJvYmplY3QiKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoNDIsNDIsNDIpID09PSAib2JqZWN0Ii4gQWN0dWFsOiBfX2Z1bmMoNDIsNDIsNDIpPT09JytfX2Z1bmMoNDIsNDIsNDIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A15_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTVfVDUiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNV9UNS5qcyIsCgphc3NlcnRpb246ICJcJ1wnYXJndW1lbnRzXCdcJyB2YXJpYWJsZSBvdmVycmlkZXMgQWN0aXZhdGlvbk9iamVjdC5hcmd1bWVudHMiLAoKZGVzY3JpcHRpb246ICJDcmVhdGluZyBhIHZhcmlhYmxlIG5hbWVkIHdpdGggXCJhcmd1bWVudHNcIiB3aXRob3V0IGEgZnVuY3Rpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIFRIRV9BTlNXRVI9IkFuc3dlciB0byBMaWZlLCB0aGUgVW5pdmVyc2UsIGFuZCBFdmVyeXRoaW5nIjsKCnZhciBhcmd1bWVudHMgPSBUSEVfQU5TV0VSOwoKZnVuY3Rpb24gX19mdW5jKCl7CiAgICByZXR1cm4gYXJndW1lbnRzOwp9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIF9fZnVuYygpID09PSBUSEVfQU5TV0VSKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSAhPT0gVEhFX0FOU1dFUicpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCJUaGUgVWx0aW1hdGUgUXVlc3Rpb24iKSA9PT0gIlRoZSBVbHRpbWF0ZSBRdWVzdGlvbiIpIHsKCSRFUlJPUignIzI6IF9fZnVuYygiVGhlIFVsdGltYXRlIFF1ZXN0aW9uIikgIT09ICJUaGUgVWx0aW1hdGUgUXVlc3Rpb24iJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A15_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTYiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExNi5qcyIsCgphc3NlcnRpb246ICJBbnkgc2VwYXJhdG9ycyBhcmUgYWRtaXR0ZWQgYmV0d2VlbiBkZWNsYXJhdGlvbiBjaHVua3MiLAoKZGVzY3JpcHRpb246ICJJbnNlcnRpbmcgc2VwYXJhdG9ycyBiZXR3ZWVuIGRlY2xhcmF0aW9uIGNodW5rcyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24KeAooCikKewp9CjsKCngoKTsKCmZ1bmN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt9OwoKeSgpOwoKZnVuY3Rpb24KCnoKCigKCikKCnsKICAgIAp9Cgo7Cgp6KCk7CgpldmFsKCJmdW5jdGlvblx1MDAwOVx1MjAyOXcoXHUwMDBDKVx1MDBBMHtcdTAwMER9OyIpOwoKdygpOwoKIH0KfSk7Cgo=","id":"S13.0_A16"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTdfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExN19UMS5qcyIsCgphc3NlcnRpb246ICJGdW5jdGlvbiBjYWxsIGNhbm5vdCBhcHBlYXIgaW4gdGhlIHByb2dyYW0gYmVmb3JlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb24gYXBwZWFycyIsCgpkZXNjcmlwdGlvbjogIlRyeWluZyB0byBjYWxsIGEgZnVuY3Rpb24gYmVmb3JlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb24gYXBwZWFycyIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnl7CiAgICB2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKTsKCSRGQUlMKCIjMS4xOiB2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbiIpOwp9IGNhdGNoKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IGZ1bmMgc2hvdWxkIHRocm93IGEgVHlwZUVycm9yICBBY3R1YWw6ICcgKyAoZSkpOyAgCiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fZnVuYyA9IGZ1bmN0aW9uICgpe3JldHVybiAiT05FIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKTsKaWYgKF9fcmVzdWx0ICE9PSAiT05FIikgewoJJEVSUk9SKCcjMjogX19yZXN1bHQgPT09ICJPTkUiLiBBY3R1YWw6IF9fcmVzdWx0ID09PScrX19yZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19mdW5jID0gZnVuY3Rpb24gKCl7cmV0dXJuICJUV08iO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCnZhciBfX3Jlc3VsdCA9IF9fZnVuYygpOwppZiAoX19yZXN1bHQgIT09ICJUV08iKSB7CgkkRVJST1IoJyMzOiBfX3Jlc3VsdCA9PT0gIlRXTyIuIEFjdHVhbDogX19yZXN1bHQgPT09JytfX3Jlc3VsdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A17_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTdfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExN19UMi5qcyIsCgphc3NlcnRpb246ICJGdW5jdGlvbiBjYWxsIGNhbm5vdCBhcHBlYXIgaW4gdGhlIHByb2dyYW0gYmVmb3JlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb24gYXBwZWFycyIsCgpkZXNjcmlwdGlvbjogIlRyeWluZyB0byBjYWxsIGEgZnVuY3Rpb24gYmVmb3JlIHRoZSBGdW5jdGlvbkV4cHJlc3Npb24gYXBwZWFycyBhbmQgdGhlbiB1c2luZyB0aGUgRnVuY3Rpb25FeHByZXNzaW9uIG9uZSBtb3JlIHRpbWUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgdmFyIF9fcmVzdWx0ID0gX19mdW5jKCk7CgkkRVJST1IoIiMxOiB2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbiIpOwp9IGNhdGNoKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IGZ1bmMgc2hvdWxkIHRocm93IGEgVHlwZUVycm9yICBBY3R1YWw6ICcgKyAoZSkpOyAgCiAgfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8gbm93IHdlIHJlYWNoIHRoZSBfX2Z1bmMgb3ZlcndyaXRpbmcgYnkgbmV3IGV4cHJlc3Npb24KdmFyIF9fZnVuYyA9IGZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiT05FIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgp2YXIgX19yZXN1bHQgPSBfX2Z1bmMoKTsKaWYgKF9fcmVzdWx0ICE9PSAiT05FIikgewoJJEVSUk9SKCcjMjogX19yZXN1bHQgPT09ICJPTkUiLiBBY3R1YWw6IF9fcmVzdWx0ID09PScrX19yZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKX19mdW5jID0gZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuICJUV08iO307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCnZhciBfX3Jlc3VsdCA9IF9fZnVuYygpOwppZiAoX19yZXN1bHQgIT09ICJUV08iKSB7CgkkRVJST1IoJyMzOiBfX3Jlc3VsdCA9PT0gIlRXTyIuIEFjdHVhbDogX19yZXN1bHQgPT09JytfX3Jlc3VsdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A17_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTgiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExOC5qcyIsCgphc3NlcnRpb246ICJDbG9zdXJlcyBhcmUgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBhIGZ1bmN0aW9uIGRlY2xhcmF0aW9uIGFzIGEgZnVuY3Rpb24gcGFyYW1ldGVyIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2Ygc2lueCAhPT0gJ3VuZGVmaW5lZCcpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBzaW54ID09PSBcJ3VuZGVmaW5lZFwnLiBBY3R1YWw6IHR5cGVvZiBzaW54ID09PScrdHlwZW9mIHNpbngpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fdmFsID0gZnVuY3Rpb24gZGVyaXZhdGl2ZShmLCBkeCkgewogICAgcmV0dXJuIGZ1bmN0aW9uKHgpIHsKICAgICAgcmV0dXJuIChmKHggKyBkeCkgLSBmKHgpKSAvIGR4OwogICAgfTsKfShmdW5jdGlvbiBzaW54KHgpe3JldHVybiBNYXRoLnNpbih4KTt9LC4wMDAxKSgwLjUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIHNpbnggIT09ICd1bmRlZmluZWQnKSB7CgkkRVJST1IoJyMyOiB0eXBlb2Ygc2lueCA9PT0gXCd1bmRlZmluZWRcJy4gQWN0dWFsOiB0eXBlb2Ygc2lueCA9PT0nK3R5cGVvZiBzaW54KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A18"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTlfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExOV9UMS5qcyIsCgphc3NlcnRpb246ICJcInZhclwiIGRvZXMgbm90IG92ZXJyaWRlIGZ1bmN0aW9uIGRlY2xhcmF0aW9uIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgYSBmdW5jdGlvbiBhbmQgYSB2YXJpYWJsZSB3aXRoIGlkZW50aWNhbCBJZGVudGlmaWVycyBpbiBnbG9iYWwgc2NvcGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vIHNpbmNlICJ2YXIiIGRvZXMgbm90IG92ZXJyaWRlIGZ1bmN0aW9uIGRlY2xhcmF0aW9uIF9fZGVjbCBpcyBzZXQgdG8gZnVuY3Rpb24KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZGVjbCAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIF9fZGVjbCA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19kZWNsID09PScrdHlwZW9mIF9fZGVjbCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19kZWNsID0gMTsKCi8vc2luY2Ugc3RhdGVtZW50IHdhcyBldmFsdXRlZCBfX2RlY2wgdHVybnMgdG8gMSBmcm9tIGZ1bmN0aW9uCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZGVjbCAhPT0gMSkgewoJJEVSUk9SKCcjMjogX19kZWNsID09PSAxLiBBY3R1YWw6IF9fZGVjbCA9PT0nK19fZGVjbCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2RlY2woKXtyZXR1cm4gMTt9CgogfQp9KTsKCg==","id":"S13.0_A19_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMTlfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMF9DaGFwdGVyXFMxMy4wX0ExOV9UMi5qcyIsCgphc3NlcnRpb246ICJcInZhclwiIGRvZXMgbm90IG92ZXJyaWRlIGZ1bmN0aW9uIGRlY2xhcmF0aW9uIiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgYSBmdW5jdGlvbiBhbmQgYSB2YXJpYWJsZSB3aXRoIGlkZW50aWNhbCBJZGVudGlmaWVycyB3aXRoaW4gZnVuY3Rpb24gc2NvcGUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIChmdW5jdGlvbiAoKXsKCiAgICAvLyBzaW5jZSAidmFyIiBkb2VzIG5vdCBvdmVycmlkZSBmdW5jdGlvbiBkZWNsYXJhdGlvbiBfX2RlY2wgaXMgc2V0IHRvIGZ1bmN0aW9uCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIC8vQ0hFQ0sjMQogICAgaWYgKHR5cGVvZiBfX2RlY2wgIT09ICJmdW5jdGlvbiIpIHsKICAgIAkkRVJST1IoJyMxOiB0eXBlb2YgX19kZWNsID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2RlY2wgPT09Jyt0eXBlb2YgX19kZWNsKTsKICAgIH0KICAgIC8vCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIAogICAgdmFyIF9fZGVjbCA9IDE7CiAgICAKICAgIC8vc2luY2Ugc3RhdGVtZW50IHdhcyBldmFsdXRlZCBfX2RlY2wgdHVybnMgdG8gMSBmcm9tIGZ1bmN0aW9uCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIC8vQ0hFQ0sjMgogICAgaWYgKF9fZGVjbCAhPT0gMSkgewogICAgCSRFUlJPUignIzI6IF9fZGVjbCA9PT0gMS4gQWN0dWFsOiBfX2RlY2wgPT09JytfX2RlY2wpOwogICAgfQogICAgLy8KICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKICAgIGZ1bmN0aW9uIF9fZGVjbCgpe3JldHVybiAxO30KfSkoKTsgICAgCgogfQp9KTsKCg==","id":"S13.0_A19_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMl9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTJfVDEuanMiLAoKYXNzZXJ0aW9uOiAiZnVuY3Rpb24gbXVzdCBiZSBldmFsdWF0ZWQgaW5zaWRlIHRoZSBleHByZXNzaW9uIiwKCmRlc2NyaXB0aW9uOiAiRGVmaW5pbmcgZnVuY3Rpb24gYm9keSB3aXRoIFwicmV0dXJuIGFyZ1wiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeCA9IChmdW5jdGlvbiBfX2Z1bmMoYXJnKXtyZXR1cm4gYXJnfSkoMSk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh4ICE9PSAxKSB7CgkkRVJST1IoJyMxOiB4ID09PSAxLiBBY3R1YWw6IHggPT09Jyt4KTsKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICh0eXBlb2YgX19mdW5jICE9PSAndW5kZWZpbmVkJykgewoJJEVSUk9SKCcjMjogdHlwZW9mIF9fZnVuYyA9PT0gXCd1bmRlZmluZWRcJy4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMl9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTJfVDIuanMiLAoKYXNzZXJ0aW9uOiAiZnVuY3Rpb24gbXVzdCBiZSBldmFsdWF0ZWQgaW5zaWRlIHRoZSBleHByZXNzaW9uIiwKCmRlc2NyaXB0aW9uOiAiRGVmaW5pbmcgZnVuY3Rpb24gYm9keSB3aXRoIFwicmV0dXJuIGFyZyArIGFyZ3VtZW50c1sxXVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeCA9IChmdW5jdGlvbiBfX2Z1bmMoYXJnKXtyZXR1cm4gYXJnICsgYXJndW1lbnRzWzFdfSkoMSwiMSIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoeCAhPT0gIjExIikgewoJJEVSUk9SKCcjMTogeCA9PT0gIjExIi4gQWN0dWFsOiB4ID09PScreCk7Cn0KCi8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIF9fZnVuYyAhPT0gJ3VuZGVmaW5lZCcpIHsKCSRFUlJPUignIzI6IHR5cGVvZiBfX2Z1bmMgPT09IFwndW5kZWZpbmVkXCcuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BMl9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTJfVDMuanMiLAoKYXNzZXJ0aW9uOiAiZnVuY3Rpb24gbXVzdCBiZSBldmFsdWF0ZWQgaW5zaWRlIHRoZSBleHByZXNzaW9uIiwKCmRlc2NyaXB0aW9uOiAiRGVmaW5pbmcgZnVuY3Rpb24gYm9keSB3aXRoIFwicmV0dXJuIGFyZ3VtZW50c1swXSArXCItXCIrIGFyZ3VtZW50c1sxXVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeCA9IChmdW5jdGlvbiBfX2Z1bmMoKXtyZXR1cm4gYXJndW1lbnRzWzBdICsiLSIrIGFyZ3VtZW50c1sxXX0pKCJPYmkiLCJXYW4iKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHggIT09ICJPYmktV2FuIikgewoJJEVSUk9SKCcjMTogeCA9PT0gIk9iaS1XYW4iLiBBY3R1YWw6IHggPT09Jyt4KTsKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICh0eXBlb2YgX19mdW5jICE9PSAndW5kZWZpbmVkJykgewoJJEVSUk9SKCcjMjogdHlwZW9mIF9fZnVuYyA9PT0gXCd1bmRlZmluZWRcJy4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A2_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BM19UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTNfVDEuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIElkZW50aWZpZXIgaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gY2FuIGJlIHJlZmVyZW5jZWQgZnJvbSBpbnNpZGUgdGhlIEZ1bmN0aW9uRXhwcmVzc2lvblwncyBGdW5jdGlvbkJvZHkgdG8gYWxsb3cgdGhlIGZ1bmN0aW9uIGNhbGxpbmcgaXRzZWxmIHJlY3Vyc2l2ZWx5IiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgYSByZWN1cnNpdmUgZnVuY3Rpb24gdGhhdCBjYWxjdWxhdGVzIGZhY3RvcmlhbCwgYXMgYSB2YXJpYWJsZS4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbiBfX2V4cF9fZnVuYyhhcmcpewogICAgaWYgKGFyZyA9PT0gMSkgewogICAgCXJldHVybiBhcmc7CiAgICB9IGVsc2UgewogICAgCXJldHVybiBfX2V4cF9fZnVuYyhhcmctMSkqYXJnOwogICAgfQp9OwoKdmFyIGZhY3Rfb2ZfMyA9ICBfX2Z1bmMoMyk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChmYWN0X29mXzMgIT09IDYpIHsKCSRFUlJPUigiIzE6IGZhY3Rfb2ZfMyA9PT0gNi4gQWN0dWFsOiBmYWN0X29mXzMgPT09IitmYWN0X29mXzMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BM19UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTNfVDIuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIElkZW50aWZpZXIgaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gY2FuIGJlIHJlZmVyZW5jZWQgZnJvbSBpbnNpZGUgdGhlIEZ1bmN0aW9uRXhwcmVzc2lvblwncyBGdW5jdGlvbkJvZHkgdG8gYWxsb3cgdGhlIGZ1bmN0aW9uIGNhbGxpbmcgaXRzZWxmIHJlY3Vyc2l2ZWx5IiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgYSByZWN1cnNpdmUgZnVuY3Rpb24gdGhhdCBjYWxjdWxhdGVzIGZhY3RvcmlhbCwgYXMgYSB2YXJpYWJsZS4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbiAoYXJnKXsKICAgIGlmIChhcmcgPT09IDEpIHsKICAgIAlyZXR1cm4gYXJnOwogICAgfSBlbHNlIHsKICAgIAlyZXR1cm4gX19mdW5jKGFyZy0xKSphcmc7CiAgICB9Cn07Cgp2YXIgZmFjdF9vZl8zID0gIF9fZnVuYygzKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGZhY3Rfb2ZfMyAhPT0gNikgewoJJEVSUk9SKCIjMTogZmFjdF9vZl8zID09PSA2LiBBY3R1YWw6IGZhY3Rfb2ZfMyA9PT0iK2ZhY3Rfb2ZfMyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BM19UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTNfVDMuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIElkZW50aWZpZXIgaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gY2FuIGJlIHJlZmVyZW5jZWQgZnJvbSBpbnNpZGUgdGhlIEZ1bmN0aW9uRXhwcmVzc2lvblwncyBGdW5jdGlvbkJvZHkgdG8gYWxsb3cgdGhlIGZ1bmN0aW9uIGNhbGxpbmcgaXRzZWxmIHJlY3Vyc2l2ZWx5IiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgc2ltcGxlIHJlY3Vyc2l2ZSBmdW5jdGlvbiB0aGF0IGNhbGN1bGF0ZXMgZmFjdG9yaWFsIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoYXJnKXsKICAgIGlmIChhcmcgPT09IDEpIHsKICAgIAlyZXR1cm4gYXJnOwogICAgfSBlbHNlIHsKICAgIAlyZXR1cm4gX19mdW5jKGFyZy0xKSphcmc7CiAgICB9Cn07Cgp2YXIgZmFjdF9vZl8zID0gIF9fZnVuYygzKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKGZhY3Rfb2ZfMyAhPT0gNikgewoJJEVSUk9SKCIjMTogZmFjdF9vZl8zID09PSA2LiBBY3R1YWw6IGZhY3Rfb2ZfMyA9PT0iK2ZhY3Rfb2ZfMyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A3_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNF9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTRfVDEuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIHByb2R1Y3Rpb24gRnVuY3Rpb25EZWNsYXJhdGlvbjogXCJmdW5jdGlvbiBJZGVudGlmaWVyICggRm9ybWFsUGFyYW1ldGVyTGlzdF9vcHQgKSB7IEZ1bmN0aW9uQm9keSB9XCIgaXMgcHJvY2Vzc2VkIGJ5IGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBzdHJpbmciLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiemlnLXppZy1zcHV0bmlrIjt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMSAKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCkgIT09ICJ6aWctemlnLXNwdXRuaWsiKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMoKSA9PT0gInppZy16aWctc3B1dG5payIuIEFjdHVhbDogX19mdW5jKCkgPT09JytfX2Z1bmMoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNF9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTRfVDIuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIHByb2R1Y3Rpb24gRnVuY3Rpb25EZWNsYXJhdGlvbjogXCJmdW5jdGlvbiBJZGVudGlmaWVyICggRm9ybWFsUGFyYW1ldGVyTGlzdF9vcHQgKSB7IEZ1bmN0aW9uQm9keSB9XCIgaXMgcHJvY2Vzc2VkIGJ5IGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHRoYXQgdXNlcyBwcmVmaXggaW5jcmVtZW50IG9wZXJhdG9yIHdpdGhpbiBpdHMgXCJyZXR1cm5cIiBFeHByZXNzaW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoYXJnKXtyZXR1cm4gKythcmc7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEgCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygxKSAhPT0gMikgewoJJEVSUk9SKCcjMjogX19mdW5jKDEpID09PSAyLiBBY3R1YWw6IF9fZnVuYygxKSA9PT0nK19fZnVuYygxKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNF9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTRfVDMuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIHByb2R1Y3Rpb24gRnVuY3Rpb25EZWNsYXJhdGlvbjogXCJmdW5jdGlvbiBJZGVudGlmaWVyICggRm9ybWFsUGFyYW1ldGVyTGlzdF9vcHQgKSB7IEZ1bmN0aW9uQm9keSB9XCIgaXMgcHJvY2Vzc2VkIGJ5IGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHRoYXQgdXNlcyBhcml0aG1ldGljYWwgb3BlcmF0b3JzIHdpdGhpbiBpdHMgXCJyZXR1cm5cIiBFeHByZXNzaW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoYXJnMSwgYXJnMiwgYXJnMyl7cmV0dXJuIGFyZzErPShhcmcyKz1hcmczKTt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMSAKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKDEwLCAyMCwgMzApICE9PSA2MCkgewoJJEVSUk9SKCcjMjogX19mdW5jKDEwLCAyMCwgMzApID09PSA2MC4gQWN0dWFsOiBfX2Z1bmMoMTAsMjAsMzApID09PScrX19mdW5jKDEwLDIwLDMwKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNF9UNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTRfVDQuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIHByb2R1Y3Rpb24gRnVuY3Rpb25EZWNsYXJhdGlvbjogXCJmdW5jdGlvbiBJZGVudGlmaWVyICggRm9ybWFsUGFyYW1ldGVyTGlzdF9vcHQgKSB7IEZ1bmN0aW9uQm9keSB9XCIgaXMgcHJvY2Vzc2VkIGJ5IGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHRoYXQgdXNlcyBzdHJpbmdzIGNvbmNhdGVuYWlvbiBvcGVhdG9yIHdpdGhpbiBpdHMgXCJyZXR1cm5cIiBFeHByZXNzaW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXtyZXR1cm4gYXJndW1lbnRzWzBdLm5hbWUgKyAiICIgKyBhcmd1bWVudHNbMF0uc3VybmFtZTt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMSAKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKHtuYW1lOidmb3gnLCBzdXJuYW1lOidtYWxkZXInfSkgIT09ICJmb3ggbWFsZGVyIikgewoJJEVSUk9SKCcjMjogX19mdW5jKHtuYW1lOlwnZm94XCcsIHN1cm5hbWU6XCdtYWxkZXJcJ30pID09PSAiZm94IG1hbGRlciIuIEFjdHVhbDogX19mdW5jKHtuYW1lOlwnZm94XCcsIHN1cm5hbWU6XCdtYWxkZXJcJ30pID09PScrX19mdW5jKHtuYW1lOidmb3gnLCBzdXJuYW1lOidtYWxkZXInfSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gZnVuY19fKGFyZyl7cmV0dXJuIGFyZy5uYW1lICsgIiAiICsgYXJnLnN1cm5hbWU7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMgCmlmICh0eXBlb2YgZnVuY19fICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMzOiB0eXBlb2YgZnVuY19fID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKGZ1bmNfXyh7bmFtZTonam9obicsIHN1cm5hbWU6J2xlbm5vbid9KSAhPT0gImpvaG4gbGVubm9uIikgewoJJEVSUk9SKCcjNDogZnVuY19fKHtuYW1lOlwnam9oblwnLCBzdXJuYW1lOlwnbGVubm9uXCd9KSA9PT0gImpvaG4gbGVubm9uIi4gQWN0dWFsOiBfX2Z1bmMoe25hbWU6XCdqb2huXCcsIHN1cm5hbWU6XCdsZW5ub25cJ30pID09PScrX19mdW5jKHtuYW1lOidqb2huJywgc3VybmFtZTonbGVubm9uJ30pKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTUuanMiLAoKYXNzZXJ0aW9uOiAiT25seSBGb3JtYWxQYXJhbWV0ZXJMaXN0IGFzIGFyZ3VtZW50cyBsaXN0IGlzIGFsbG93ZWQiLAoKZGVzY3JpcHRpb246ICJUcnlpbmcgdG8gdXNlIFthcmcxLCBhcmcyLCBhcmczXSwgKGFyZzEsIGFyZzIsIGFyZzMpLCBldGMuIGFzIGEgRm9ybWFsUGFyYW1ldGVyTGlzdCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnl7CglldmFsKCJmdW5jdGlvbiBfX2Z1bmMoW2FyZzEsIGFyZzIsIGFyZzNdKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9Iik7CgkkRVJST1IoJyMxOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoW2FyZzEsIGFyZzIsIGFyZzNdKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaChlKXsKCWlmKCEoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSl7CgkJJEVSUk9SKCcjMS4xOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoW2FyZzEsIGFyZzIsIGFyZzNdKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDt9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24gb2YgU3ludGF4RXJyb3IuIEFjdHVhbDogZXhjZXB0aW9uIGlzICcrZSk7Cgl9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCnRyeXsKCWV2YWwoImZ1bmN0aW9uIF9fZnVuYygoYXJnMSwgYXJnMiwgYXJnMykpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoO30iKTsKCSRFUlJPUignIzI6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYygoYXJnMSwgYXJnMiwgYXJnMykpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoO30iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpCn0gY2F0Y2goZSl7CglpZighKGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikpewoJCSRFUlJPUignIzIuMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKChhcmcxLCBhcmcyLCBhcmczKSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uIG9mIFN5bnRheEVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwoJfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwp0cnl7CglldmFsKCJmdW5jdGlvbiBfX2Z1bmMoYXJnMSwgYXJnMiwgYXJnMywpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoO30iKTsKCSRFUlJPUignIzM6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYyhhcmcxLCBhcmcyLCBhcmczLCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJykKfSBjYXRjaChlKXsKCWlmKCEoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSl7CgkJJEVSUk9SKCcjMy4xOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoYXJnMSwgYXJnMiwgYXJnMywpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoO30iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbiBvZiBTeW50YXhFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKCX0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.0_A5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNl9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTZfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25EZWNsYXJhdGlvbiBjYW4gYmUgb3ZlcnJpZGVkIGJ5IG90aGVyIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCB0aGUgc2FtZSBJZGVudGlmaWVyIiwKCmRlc2NyaXB0aW9uOiAiRHVwbGljYXRpbmcgZnVuY3Rpb24gZGVjbGFyYXRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAxfTsKIAp2YXIgX19zdG9yZV9fZnVuYyA9IF9fZnVuYzsKIAp2YXIgX18xID0gX19mdW5jKCk7CiAKIGZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAnQSd9OwogCnZhciBfX0EgPSBfX2Z1bmMoKTsKIAovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX3N0b3JlX19mdW5jICE9PSBfX2Z1bmMpIHsKCSRFUlJPUignIzE6IF9fc3RvcmVfX2Z1bmMgPT09IF9fZnVuYy4gQWN0dWFsOiBfX3N0b3JlX19mdW5jID09PScrX19zdG9yZV9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vIAogCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fMSAhPT0gX19BKSB7CgkkRVJST1IoJyMyOiBfXzEgPT09IF9fQS4gQWN0dWFsOiBfXzEgPT09JytfXzEpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A6_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BNl9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTZfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25EZWNsYXJhdGlvbiBjYW4gYmUgb3ZlcnJpZGVkIGJ5IG90aGVyIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCB0aGUgc2FtZSBJZGVudGlmaWVyIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGJlZm9yZSBpdCBpcyBkZWNsYXJlZCBvbmUgbW9yZSB0aW1lIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeXsKICAgIHZhciBfX3Jlc3VsdCA9IF9fZnVuYygpOwp9IGNhdGNoKGUpIHsKICAgICRGQUlMKCIjMTogRnVuY3Rpb24gY2FsbCBjYW4gYXBwZWFycyBpbiB0aGUgcHJvZ3JhbSBiZWZvcmUgdGhlIEZ1bmN0aW9uRGVjbGFyYXRpb24gYXBwZWFycyIpOwp9CmlmIChfX3Jlc3VsdCAhPT0gIlNFQ09ORCIpIHsKCSRFUlJPUignIzEuMTogX19yZXN1bHQgPT09ICJTRUNPTkQiLiBBY3R1YWw6IF9fcmVzdWx0ID09PScrX19yZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuICJGSVJTVCI7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKX19yZXN1bHQgPSBfX2Z1bmMoKTsKaWYgKF9fcmVzdWx0ICE9PSAiU0VDT05EIikgewoJJEVSUk9SKCcjMjogX19yZXN1bHQgPT09ICJTRUNPTkQiLiBBY3R1YWw6IF9fcmVzdWx0ID09PScrX19yZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuICJTRUNPTkQiO307CgogfQp9KTsKCg==","id":"S13.0_A6_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BN19UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTdfVDEuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIEZ1bmN0aW9uQm9keSBtdXN0IGJlIFNvdXJjZUVsZW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgb25seSBTb3VyY2VFbGVtZW50cyB3aXRoaW4gdGhlIEZ1bmN0aW9uQm9keSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7J2dyb3VuZCBjb250cm9sIHRvIG1ham9yIHRvbSd9OwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuY19fMigpe2J9OwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICh0eXBlb2YgX19mdW5jX18yICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMyOiB0eXBlb2YgX19mdW5jX18yID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmNfXzIgPT09Jyt0eXBlb2YgX19mdW5jX18yKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuY19fMygpezF9OwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19mdW5jX18zICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMzOiB0eXBlb2YgX19mdW5jX18zID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmNfXzMgPT09Jyt0eXBlb2YgX19mdW5jX18zKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuY19fNCgpezErY307Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKHR5cGVvZiBfX2Z1bmNfXzQgIT09ICJmdW5jdGlvbiIpIHsKCSRFUlJPUignIzQ6IHR5cGVvZiBfX2Z1bmNfXzQgPT09ICJmdW5jdGlvbiIuIEFjdHVhbDogdHlwZW9mIF9fZnVuY19fNCA9PT0nK3R5cGVvZiBfX2Z1bmNfXzQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jX181KCl7aW5jKGQpfTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fZnVuY19fNSAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjNTogdHlwZW9mIF9fZnVuY19fNSA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jX181ID09PScrdHlwZW9mIF9fZnVuY19fNSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmNfXzYoKXt2YXIgXHUwMDQyID0gMTt9OwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmICh0eXBlb2YgX19mdW5jX182ICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyM2OiB0eXBlb2YgX19mdW5jX182ID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmNfXzYgPT09Jyt0eXBlb2YgX19mdW5jX182KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vZnVuY3Rpb24gX19mdW5jX183KCl7dmFyIFx1MDAzZCA9IDE7fTsKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy8vL0NIRUNLIzcKLy9pZiAodHlwZW9mIF9fZnVuY19fNyAhPT0gImZ1bmN0aW9uIikgewovLwkkRVJST1IoJyM3OiBUaGUgRnVuY3Rpb25Cb2R5IG11c3QgYmUgU291cmNlRWxlbWVudHMnKTsKLy99Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A7_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BN19UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTdfVDIuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIEZ1bmN0aW9uQm9keSBtdXN0IGJlIFNvdXJjZUVsZW1lbnRzIiwKCmRlc2NyaXB0aW9uOiAiSW5zZXJ0aW5nIGVsZW1lbnRzIHRoYXQgaXMgZGlmZmVyZW50IGZyb20gU291cmNlRWxlbWVudHMgaW50byB0aGUgRnVuY3Rpb25Cb2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeXsKCWV2YWwoImZ1bmN0aW9uIF9fZnVuYygpey8gQUJDfSIpOwoJJEVSUk9SKCcjMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKCl7LyBBQkN9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaChlKXsKCWlmKCEoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSl7CgkJJEVSUk9SKCcjMS4xOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKXsvIEFCQ30iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbiBvZiBTeW50YXhFcnJvci4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKCX0KfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKdHJ5ewoJZXZhbCgiZnVuY3Rpb24gX19mdW5jKCl7JjF9Iik7CgkkRVJST1IoJyMzOiBldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKXsmMX0iKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoKGUpewoJaWYoIShlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IpKXsKCQkkRVJST1IoJyMzLjE6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYygpeyYxfSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uIG9mIFN5bnRheEVycm9yLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwoJfQp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAp0cnl7CglldmFsKCJmdW5jdGlvbiBfX2Z1bmMoKXsjIEFCQ30iKTsKCSRFUlJPUignIzQ6IGV2YWwoImZ1bmN0aW9uIF9fZnVuYygpeyMgQUJDfSIpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2goZSl7CglpZighKGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikpewoJCSRFUlJPUignIzQuMTogZXZhbCgiZnVuY3Rpb24gX19mdW5jKCl7IyBBQkN9IikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24gb2YgU3ludGF4RXJyb3IuIEFjdHVhbDogZXhjZXB0aW9uIGlzICcrZSk7Cgl9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.0_A7_T2"},{"code":"IGZ1bmN0aW9uIF9fZnVuYygpe1xBXEJcQ307CiAKCg==","id":"S13.0_A7_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BOF9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQThfVDEuanMiLAoKYXNzZXJ0aW9uOiAiQXJndW1lbnRzIHByb3BlcnR5IG9mIGFjdGl2YXRpb24gb2JqZWN0IGNvbnRhaW5zIHJlYWwgcGFyYW1zIHRvIGJlIHBhc3NlZCIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gZGVjbGFyZWQgd2l0aCBcImZ1bmN0aW9uIF9fZnVuYyhwYXJhbTEsIHBhcmFtMiwgcGFyYW0zKVwiIGFuZCB1c2luZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGluIG9yZGVyIHRvIHBlcmZvcm0gdGhlIHRlc3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYyhwYXJhbTEsIHBhcmFtMiwgcGFyYW0zKSB7CiAJcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7CiB9CiAKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKCdBJykgIT09IDEpIHsKIAkkRVJST1IoJyMxOiBfX2Z1bmMoXCdBXCcpID09PSAxLiBBY3R1YWw6IF9fZnVuYyhcJ0FcJykgPT09JytfX2Z1bmMoJ0EnKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2Z1bmMoJ0EnLCAnQicsIDEsIDIsX19mdW5jKSAhPT0gNSkgewoJJEVSUk9SKCcjMjogX19mdW5jKFwnQVwnLCBcJ0JcJywgMSwgMixfX2Z1bmMpID09PSA1LiBBY3R1YWw6IF9fZnVuYyhcJ0FcJywgXCdCXCcsIDEsIDIsX19mdW5jKSA9PT0nK19fZnVuYygnQScsICdCJywgMSwgMixfX2Z1bmMpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KIAogCiAKCiB9Cn0pOwoK","id":"S13.0_A8_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BOF9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQThfVDIuanMiLAoKYXNzZXJ0aW9uOiAiQXJndW1lbnRzIHByb3BlcnR5IG9mIGFjdGl2YXRpb24gb2JqZWN0IGNvbnRhaW5zIHJlYWwgcGFyYW1zIHRvIGJlIHBhc3NlZCIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2l0aCBubyBwYXJhbWV0ZXJzIGFuZCB1c2luZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGluIG9yZGVyIHRvIHBlcmZvcm0gdGhlIHRlc3QiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpIHsKIAlyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDsKIH0KIAovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoJ0EnKSAhPT0gMSkgewogCSRFUlJPUignIzE6IF9fZnVuYyhcJ0FcJykgPT09IDEuIEFjdHVhbDogX19mdW5jKFwnQVwnKSA9PT0nK19fZnVuYygnQScpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygnQScsICdCJywgMSwgMixfX2Z1bmMpICE9PSA1KSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMoXCdBXCcsIFwnQlwnLCAxLCAyLF9fZnVuYykgPT09IDUuIEFjdHVhbDogX19mdW5jKFwnQVwnLCBcJ0JcJywgMSwgMixfX2Z1bmMpID09PScrX19mdW5jKCdBJywgJ0InLCAxLCAyLF9fZnVuYykpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19mdW5jKCkgIT09IDApIHsKCSRFUlJPUignIzM6IF9fZnVuYygpID09PSAwLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.0_A8_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMF9BOSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4wX0NoYXB0ZXJcUzEzLjBfQTkuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb24gY2FuIGJlIHBhc3NlZCBhcyBhcmd1bWVudCIsCgpkZXNjcmlwdGlvbjogIlVzaW5nIGZ1bmN0aW9uIGFzIGFyZ3VtZW50IG9mIGFub3RoZXIgZnVuY3Rpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuY19fSU5DKGFyZyl7cmV0dXJuIGFyZyArIDE7fTsKZnVuY3Rpb24gX19mdW5jX19NVUxUKGluY3JlbWVudGF0b3IsIGFyZywgbXVsdCl7IHJldHVybiBpbmNyZW1lbnRhdG9yKGFyZykqbXVsdDsgfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuY19fTVVMVChfX2Z1bmNfX0lOQywgMiwgMikgIT09IDYpIHsKCSRFUlJPUignIzE6IGZ1bmN0aW9uICBjYW4gYmUgcGFzc2VkIGFzIGFyZ3VtZW50Jyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKIH0KfSk7Cgo=","id":"S13.0_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0ExX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0ExX1QxLmpzIiwKCmFzc2VydGlvbjogIlRoZSBkZXB0aCBvZiBuZXN0ZWQgZnVuY3Rpb24gY2FsbHMgcmVhY2hlcyAzMiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGZ1bmN0aW9uIGNhbGxzIDMyIGVsZW1lbnRzIGRlcHRoIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAoZnVuY3Rpb24oKXsKICAgIChmdW5jdGlvbigpewogICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jdGlvbigpe30pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkoKQogICAgICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgICAgIH0pKCkKICAgICAgICAgICAgfSkoKQogICAgICAgIH0pKCkKICAgIH0pKCkKfSkoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiB9Cn0pOwoK","id":"S13.2.1_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1QxLmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBudW1iZXIgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoX19hcmcpewogICAgX19hcmcuZm9vPTc7Cn0KCnZhciBfX29iaj17fTsKCl9fZnVuYyhfX29iaik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai5mb28gIT09IDcpIHsKCSRFUlJPUignIzE6IF9fb2JqLmZvbyA9PT0gNy4gQWN0dWFsOiBfX29iai5mb28gPT09JytfX29iai5mb28pOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.1_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1QyLmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBzdHJpbmcgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoX19hcmcpewogICAgX19hcmcuZm9vPSJ3aGlza2V5IGdvZ28iOwp9Cgp2YXIgX19vYmo9e307CgogX19mdW5jKF9fb2JqKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLmZvbyAhPT0gIndoaXNrZXkgZ29nbyIpIHsKCSRFUlJPUignIzE6IF9fb2JqLmZvbyA9PT0gIndoaXNrZXkgZ29nbyIuIEFjdHVhbDogX19vYmouZm9vID09PScrX19vYmouZm9vKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1QzLmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBudW1iZXIgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIGFyZ3VtZW50c1swXVsiUEkiXT0zLjE0Owp9Cgp2YXIgX19vYmo9e307CgpfX2Z1bmMoX19vYmopOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19vYmouUEkgIT09IDMuMTQpIHsKCSRFUlJPUignIzE6IF9fb2JqLlBJID09PSAzLjE0LiBBY3R1YWw6IF9fb2JqLlBJID09PScrX19vYmouUEkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.1_A4_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E0X1Q0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E0X1Q0LmpzIiwKCmFzc2VydGlvbjogIk9iamVjdHMgYXMgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIiwKCmRlc2NyaXB0aW9uOiAiQWRkaW5nIG5ldyBudW1iZXIgcHJvcGVydHkgdG8gYSBmdW5jdGlvbiBhcmd1bWVudCB3aXRoaW4gdGhlIGZ1bmN0aW9uIGJvZHksIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIGFyZ3VtZW50c1swXVsiRSJdPTIuNzQ7Cn0KCnZhciBfX29iaj17fTsKCl9fZnVuYyhfX29iaik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai5FICE9PSAyLjc0KSB7CgkkRVJST1IoJyMxOiBfX29iai5FID09PSAyLjc0LiBBY3R1YWw6IF9fb2JqLkUgPT09JytfX29iai5FKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A4_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E1X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E1X1QxLmpzIiwKCmFzc2VydGlvbjogIkNsb3N1cmVzIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIlNvcnRpbmcgd2l0aCBjbG9zdXJlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19hcnIgPSBbNCwzLDIsMSw0LDMsMiwxLDQsMywyLDFdOwovL1NvcnQgdXNlcyBjbG9zdXJlCi8vCl9fYXJyLnNvcnQoCglmdW5jdGlvbih4LHkpIHsgCgkJaWYgKHg+eSl7cmV0dXJuIC0xO30gCgkJaWYgKHg8eSl7cmV0dXJuIDE7fSAKCQlpZiAoeD09eSl7cmV0dXJuIDA7fSAKCX0KKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fYXJyLnRvU3RyaW5nKCkgIT09IFs0LDQsNCwzLDMsMywyLDIsMiwxLDEsMV0udG9TdHJpbmcoKSkgewoJJEVSUk9SKCcjMTogX19hcnIudG9TdHJpbmcoKSA9PT0gWzQsNCw0LDMsMywzLDIsMiwyLDEsMSwxXS50b1N0cmluZygpLiBBY3R1YWw6IF9fYXJyLnRvU3RyaW5nKCkgPT09JytfX2Fyci50b1N0cmluZygpKTsKfQoKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vICAKCiB9Cn0pOwoK","id":"S13.2.1_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E1X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E1X1QyLmpzIiwKCmFzc2VydGlvbjogIkNsb3N1cmVzIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIlJldHVybmluZyBhIGZ1bmN0aW9uIHRoYXQgYXBwcm94aW1hdGVzIHRoZSBkZXJpdmF0aXZlIG9mIGYiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vIFJldHVybiBhIGZ1bmN0aW9uIHRoYXQgYXBwcm94aW1hdGVzIHRoZSBkZXJpdmF0aXZlIG9mIGYKLy8gdXNpbmcgYW4gaW50ZXJ2YWwgb2YgZHgsIHdoaWNoIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNtYWxsLgpmdW5jdGlvbiBkZXJpdmF0aXZlKGYsIGR4KSB7CiAgICByZXR1cm4gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4gKGYoeCArIGR4KSAtIGYoeCkpIC8gZHg7CiAgICB9Owp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChNYXRoLmFicyhkZXJpdmF0aXZlKE1hdGguc2luLCAwLjAwMDEpKDApIC0gZGVyaXZhdGl2ZShNYXRoLnNpbiwgMC4wMDAxKSgyKk1hdGguUEkpKSA+PSAxLzY1NTM2LjApIHsKCSRFUlJPUignIzE6IE1hdGguYWJzKGRlcml2YXRpdmUoTWF0aC5zaW4sIDAuMDAwMSkoMCkgLSBkZXJpdmF0aXZlKE1hdGguc2luLCAwLjAwMDEpKDIqTWF0aC5QSSkpIDw9IDEvNjU1MzYuMCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.1_A5_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E2X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E2X1QxLmpzIiwKCmFzc2VydGlvbjogIlByaW1pdGl2ZSB0eXBlcyBhcmUgcGFzc2VkIGJ5IHZhbHVlIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcImZ1bmN0aW9uIF9fZnVuYyhhcmcxLCBhcmcyKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoYXJnMSwgYXJnMil7CiAgICBhcmcxKys7CiAgICBhcmcyKz0iQkEiOwp9OwoKdmFyIHg9MTsKeT0yOwp2YXIgYT0iQUIiCmI9IlNBTSI7CgpfX2Z1bmMoeCxhKTsKX19mdW5jKHksYik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh4IT09MSB8fCB5IT09MiB8fCBhIT09IkFCIiB8fCBiIT09IlNBTSIpIHsKCSRFUlJPUignIzE6IHggPT09IDEgYW5kIHkgPT09IDIgYW5kIGEgPT09ICJBQiIgYW5kIGIgPT09ICJTQU0iLiBBY3R1YWw6IHggPT09Jyt4KycgYW5kIHkgPT09Jyt5KycgYW5kIGEgPT09JythKycgYW5kIGIgPT09JytiKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A6_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E2X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E2X1QyLmpzIiwKCmFzc2VydGlvbjogIlByaW1pdGl2ZSB0eXBlcyBhcmUgcGFzc2VkIGJ5IHZhbHVlIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcIl9fZnVuYyA9IGZ1bmN0aW9uKGFyZzEsIGFyZzIpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fZnVuYyA9IGZ1bmN0aW9uKGFyZzEsIGFyZzIpewogICAgYXJnMSsrOwogICAgYXJnMis9IkJBIjsKfTsKCnZhciB4PTE7Cnk9MjsKdmFyIGE9IkFCIgpiPSJTQU0iOwoKX19mdW5jKHgsYSk7Cl9fZnVuYyh5LGIpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoeCE9PTEgfHwgeSE9PTIgfHwgYSE9PSJBQiIgfHwgYiE9PSJTQU0iKSB7CgkkRVJST1IoJyMxOiB4ID09PSAxIGFuZCB5ID09PSAyIGFuZCBhID09PSAiQUIiIGFuZCBiID09PSAiU0FNIi4gQWN0dWFsOiB4ID09PScreCsnIGFuZCB5ID09PScreSsnIGFuZCBhID09PScrYSsnIGFuZCBiID09PScrYik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A6_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIG51bGwuIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHZhciB4ID0gbnVsbDsKICAgIHJldHVybiB4Owp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeXsKICAgIHZhciB4PV9fZnVuYygpOwp9IGNhdGNoKGUpewogICAgJEVSUk9SKCcjMTogdmFyIHg9X19mdW5jKCkgZG9lcyBub3QgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24uIEFjdHVhbDogZXhjZXB0aW9uIGlzICcrZSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A7_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIG51bGwuIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19mdW5jID0gZnVuY3Rpb24gKClcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uICgpewogICAgdmFyIHggPSBudWxsOwogICAgcmV0dXJuIHg7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgdmFyIHg9X19mdW5jKCk7Cn0gY2F0Y2goZSl7CiAgICAkRVJST1IoJyMxOiB2YXIgeD1fX2Z1bmMoKSBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbi4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A7_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1QzLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIG51bWJlci4gRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aCBcImZ1bmN0aW9uIF9fZnVuYygpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpewogICAgeCA9IDE7CiAgICByZXR1cm4geDsKfQoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjCnRyeSB7Cgl4PXg7CgkkRVJST1IoJyMwOiAieD14IiBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoIChlKSB7fQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgdmFyIF9feD1fX2Z1bmMoKQp9IGNhdGNoKGUpewogICAgJEVSUk9SKCcjMTogdmFyIF9feD1fX2Z1bmMoKSBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbi4gQWN0dWFsOiBleGNlcHRpb24gaXMgJytlKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9feCAhPT0gMSkgewoJJEVSUk9SKCcjMjogX194ID09PSAxLiBBY3R1YWw6IF9feCA9PT0nK19feCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh4ICE9PSAxKSB7CgkkRVJST1IoJyMzOiB4ID09PSAxLiBBY3R1YWw6IHggPT09Jyt4KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.1_A7_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E3X1Q0IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E3X1Q0LmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiUmV0dXJuaW5nIGJvb2xlYW4uIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHZhciB4ID0gdHJ1ZTsKICAgIHJldHVybiB4Owp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMKdHJ5IHsKCXg9eDsKCSRFUlJPUignIzA6ICJ4PXgiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnl7CiAgICB2YXIgX194PV9fZnVuYygpCn0gY2F0Y2goZSl7CiAgICAkRVJST1IoJyMxOiB2YXIgX194PV9fZnVuYygpIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uLiBBY3R1YWw6IGV4Y2VwdGlvbiBpcyAnK2UpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIShfX3gpKSB7CgkkRVJST1IoJyMyOiBfX3ggPT09IHRydWUuIEFjdHVhbDogX194ID09PScrX194KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKdHJ5IHsKCXg9eDsKCSRFUlJPUignIzM6ICJ4PXgiIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13.2.1_A7_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E4X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E4X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiVGhyb3dpbmcgYW4gZXhjZXB0aW9uIHdpdGhpbiBhIGZ1bmN0aW9uIGJvZHkuIERlY2xhcmluZyBmdW5jdGlvbiB3aXRoIFwiZnVuY3Rpb24gX19mdW5jKClcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gX19mdW5jKCl7CiAgICB2YXIgeCA9IDE7CiAgICB0aHJvdyAoIkNhdGNoIE1lIElmIFlvdSBDYW4iKQogICAgcmV0dXJuIHg7Cn0KCnRyeXsKICAgIHZhciB4PV9fZnVuYygpCiAgICAkRVJST1IoJyMwOiB2YXIgeD1fX2Z1bmMoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoKGUpewogICAgaWYgKGUgIT09ICJDYXRjaCBNZSBJZiBZb3UgQ2FuIikgewogICAgCSRFUlJPUignIzE6IEV4Y2VwdGlvbiA9PT0gIkNhdGNoIE1lIElmIFlvdSBDYW4iLiBBY3R1YWw6IGV4Y2VwdGlvbiA9PT0nK2UpOwogICAgfQp9CgogfQp9KTsKCg==","id":"S13.2.1_A8_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E4X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E4X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBGIGlzIGNhbGxlZCwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgdGFrZW46IiwKCmRlc2NyaXB0aW9uOiAiVGhyb3dpbmcgYW4gZXhjZXB0aW9uIHdpdGhpbiBhIGZ1bmN0aW9uIGJvZHkuIERlY2xhcmluZyBmdW5jdGlvbiB3aXRoIFwidmFyIF9fZnVuYyA9IGZ1bmN0aW9uIChtZXNzYWdlKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgQ0FUQ0hfTUVfSUZfWU9VX0NBTiA9IHRydWU7Cgp2YXIgX19mdW5jID0gZnVuY3Rpb24gKG1lc3NhZ2UpewogICAgdmFyIHggPSAxOwogICAgdGhyb3cgKG1lc3NhZ2UpCiAgICByZXR1cm4geDsKfQoKdHJ5ewogICAgdmFyIHg9X19mdW5jKENBVENIX01FX0lGX1lPVV9DQU4pCiAgICAkRVJST1IoJyMwOiB2YXIgeD1fX2Z1bmMoQ0FUQ0hfTUVfSUZfWU9VX0NBTikgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaChlKXsKICAgIGlmICghZSkgewogICAgCSRFUlJPUignIzE6IEV4Y2VwdGlvbiA9PT0gdHJ1ZS4gQWN0dWFsOiBleGNlcHRpb24gPT09JytlKTsKICAgIH0KfQoKIH0KfSk7Cgo=","id":"S13.2.1_A8_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5LjFfVDEiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMl9DcmVhdGluZ19GdW5jdGlvbl9PYmplY3RzXFMxMy4yLjFfQTkuMV9UMS5qcyIsCgphc3NlcnRpb246ICJXaGVuIHRoZSBbW0NhbGxdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgaXMgY2FsbGVkLCIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIGFuZCBubyBcInJldHVyblwiIGluIHRoZSBmdW5jdGlvbiBib2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsKCmZ1bmN0aW9uIF9fZnVuYygpewogICAgeCA9IHRydWU7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygpICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19mdW5jKCkgPT09JytfX2Z1bmMoKSk7Cn07Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIXgpIHsKCSRFUlJPUignIzI6IHggPT09IHRydWUuIEFjdHVhbDogeCA9PT0gJyt4KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A9.1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5LjFfVDIiLAoKcGF0aDogIjEzX0Z1bmN0aW9uX0RlZmluaXRpb25cMTMuMl9DcmVhdGluZ19GdW5jdGlvbl9PYmplY3RzXFMxMy4yLjFfQTkuMV9UMi5qcyIsCgphc3NlcnRpb246ICJXaGVuIHRoZSBbW0NhbGxdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgaXMgY2FsbGVkLCIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19mdW5jID0gZnVuY3Rpb24oKVwiIGFuZCBubyBcInJldHVyblwiIGluIHRoZSBmdW5jdGlvbiBib2R5IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbigpewogICAgeCA9IHRydWU7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygpICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19mdW5jKCkgPT09JytfX2Z1bmMoKSk7Cn07Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoIXgpIHsKCSRFUlJPUignIzI6IHggPT09IHRydWUuIEFjdHVhbDogeCA9PT0gJyt4KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.1_A9.1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E5X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgXCJyZXR1cm5cIiB3aXRoIG5vIGV4cHJlc3Npb24uIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsgCgpmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIHggPSAxOwogICAgcmV0dXJuOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoKSAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9OwovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKHghPT0xKSB7CgkkRVJST1IoJyMyOiB4ID09PSAxLiBBY3R1YWw6IHggPT09ICcreCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A9_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4xX0E5X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4xX0E5X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ2FsbF1dIHByb3BlcnR5IGZvciBhIEZ1bmN0aW9uIG9iamVjdCBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiVXNpbmcgXCJyZXR1cm5cIiB3aXRoIG5vIGV4cHJlc3Npb24uIERlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19mdW5jID0gZnVuY3Rpb24oKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgeDsgCgp2YXIgX19mdW5jID0gZnVuY3Rpb24oKXsKICAgIHggPSAxOwogICAgcmV0dXJuOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoKSAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9OwovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKHghPT0xKSB7CgkkRVJST1IoJyMyOiB4ID09PSAxLiBBY3R1YWw6IHggPT09ICcreCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.1_A9_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTAuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgcG9zc2libGUgYXMgbG9uZyBhcyB0aGlzLmFueV9GdW5jdGlvbiBpcyBkZWNsYXJlZCIsCgpkZXNjcmlwdGlvbjogIkNhbGxpbmcgYSBmdW5jdGlvbiBhcyBhIGNvbnN0cnVjdG9yIGFmdGVyIGl0IGhhcyBiZWVuIGRlY2xhcmVkIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBGQUNUT1JZKCl7CiAgIHRoaXMuaWQgPSAwOwogICAKICAgdGhpcy5mdW5jID0gZnVuY3Rpb24gKCl7CiAgICAgIHJldHVybiA1OwogICB9CiAgIAogICB0aGlzLmlkID0gdGhpcy5mdW5jKCk7CiAgICAgCn0KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewoJdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCk7Cn0gY2F0Y2ggKGUpIHsKCSRFUlJPUignIzE6IHZhciBvYmogPSBuZXcgRkFDVE9SWSgpIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uLiBBY3R1YWw6IEV4Y2VwdGlvbiBpcyAnK2UpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAob2JqLmlkICE9PSA1KSB7CgkkRVJST1IoJyMyOiBvYmouaWQgPT09IDUuIEFjdHVhbDogb2JqLmlkID09PScrb2JqLmlkKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A10"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTEuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgcG9zc2libGUgYXMgbG9uZyBhcyB0aGlzLmFueV9GdW5jdGlvbiBpcyBkZWNsYXJlZCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgd2l0aCBcImZ1bmN0aW9uIGZ1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBGQUNUT1JZKCl7CiAgIHRoaXMuaWQgPSAwOwogICAgICAKICAgdGhpcy5pZCA9IHRoaXMuZnVuYygpOwogICAKICAgZnVuY3Rpb24gZnVuYygpewogICAgICByZXR1cm4gImlkX3N0cmluZyI7CiAgIH0KICAgICAKfQovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCnRyeSB7Cgl2YXIgb2JqID0gbmV3IEZBQ1RPUlkoKTsKCSRFUlJPUignIzE6IHZhciBvYmogPSBuZXcgRkFDVE9SWSgpIGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJyk7Cn0gY2F0Y2ggKGUpIHt9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13.2.2_A11"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTIuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgcG9zc2libGUgYXMgbG9uZyBhcyB0aGlzLmFueV9GdW5jdGlvbiBpcyBkZWNsYXJlZCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgd2l0aCBcImZ1bmN0aW9uIGZ1bmMoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBGQUNUT1JZKCl7CiAgIHRoaXMuaWQgPSAwOwogICAgICAKICAgdGhpcy5pZCA9IGZ1bmMoKTsKICAgCiAgIGZ1bmN0aW9uIGZ1bmMoKXsKICAgICAgcmV0dXJuICJpZF9zdHJpbmciOwogICB9CiAgICAgCn0KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQp0cnkgewoJdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCk7Cn0gY2F0Y2ggKGUpIHsKCSRFUlJPUignIzE6IHZhciBvYmogPSBuZXcgRkFDVE9SWSgpIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uLiBBY3R1YWw6IEV4Y2VwdGlvbiBpcyAnK2UpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAob2JqLmlkICE9PSAiaWRfc3RyaW5nIikgewoJJEVSUk9SKCcjMjogb2JqLmlkID09PSAiaWRfc3RyaW5nIi4gQWN0dWFsOiBvYmouaWQgPT09JytvYmouaWQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A12"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTMuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgaW5hZG1pc3NpYmxlIGFzIGxvbmcgYXMgdGhpcy5hbnlfRnVuY3Rpb24gaXMgZGVjbGFyZWQgYnkgZXZhbCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgYnkgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gRkFDVE9SWSgpewogICB0aGlzLmlkID0gMDsKICAgICAgCiAgIHRoaXMuaWQgPSBmdW5jKCk7CiAgIAogICBldmFsKCJmdW5jdGlvbiBmdW5jKCl7cmV0dXJuIFwiaWRfc3RyaW5nXCI7fSIpOwogICAgIAp9Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKCXZhciBvYmogPSBuZXcgRkFDVE9SWSgpOwoJJEVSUk9SKCcjMTogdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkge30KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A13"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTQuanMiLAoKYXNzZXJ0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgaXMgaW5hZG1pc3NpYmxlIGFzIGxvbmcgYXMgdGhpcy5hbnlfRnVuY3Rpb24gaXMgZGVjbGFyZWQgYnkgZXZhbCBhbmQgY2FsbGVkIiwKCmRlc2NyaXB0aW9uOiAiQ2FsbGluZyBhIGZ1bmN0aW9uIGFzIGEgY29uc3RydWN0b3IgYWZ0ZXIgaXQgaGFzIGJlZW4gZGVjbGFyZWQgYnkgZXZhbCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gRkFDVE9SWSgpewogICB0aGlzLmlkID0gMDsKICAgCiAgIGV2YWwoImZ1bmN0aW9uIGZ1bmMoKXtyZXR1cm4gXCJpZF9zdHJpbmdcIjt9Iik7CiAgICAgIAogICB0aGlzLmlkID0gZnVuYygpOwogICAgIAp9Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKCXZhciBvYmogPSBuZXcgRkFDVE9SWSgpOwp9IGNhdGNoIChlKSB7CgkkRVJST1IoJyMxOiB2YXIgb2JqID0gbmV3IEZBQ1RPUlkoKSBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A14"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDEuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwidmFyIG9iaiA9IHt9XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX29iaiA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBvYmogIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2Ygb2JqID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2Ygb2JqID09PScrdHlwZW9mIG9iaik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX29iai5wcm9wICE9PSAiQSIpIHsKCSRFUlJPUignIzI6IF9fb2JqLnByb3AgPT09ICJBIi4gQWN0dWFsOiBfX29iai5wcm9wID09PScrX19vYmoucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX29iai5zbG90LnByb3AgIT09MSkgewoJJEVSUk9SKCcjMzogX19vYmouc2xvdC5wcm9wID09PTEuIEFjdHVhbDogX19vYmouc2xvdC5wcm9wID09PScrX19vYmouc2xvdC5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fRkFDVE9SWSgpewogICAgdGhpcy5wcm9wID0gMTsKICAgIHZhciBvYmogPSB7fTsKICAgIG9iai5wcm9wID0gIkEiOwogICAgb2JqLnNsb3QgPSB0aGlzOwogICAgcmV0dXJuIG9iajsKfQoKIH0KfSk7Cgo=","id":"S13.2.2_A15_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDIuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwib2JqID0ge31cIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fb2JqID0gbmV3IF9fRkFDVE9SWSgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAob2JqLnByb3AgIT09ICJBIikgewoJJEVSUk9SKCcjMTogb2JqLnByb3AgPT09ICJBIi4gQWN0dWFsOiBvYmoucHJvcCA9PT0nK29iai5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnByb3AgIT09ICJBIikgewoJJEVSUk9SKCcjMjogX19vYmoucHJvcCA9PT0gIkEiLiBBY3R1YWw6IF9fb2JqLnByb3AgPT09JytfX29iai5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fb2JqLnNsb3QucHJvcCAhPT0xKSB7CgkkRVJST1IoJyMzOiBfX29iai5zbG90LnByb3AgPT09IDEuIEFjdHVhbDogX19vYmouc2xvdC5wcm9wID09PScrX19vYmouc2xvdC5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fRkFDVE9SWSgpewogICAgdGhpcy5wcm9wID0gMTsKICAgIG9iaiA9IHt9OwogICAgb2JqLnByb3AgPSAiQSI7CiAgICBvYmouc2xvdCA9IHRoaXM7CiAgICByZXR1cm4gb2JqOwp9CgogfQp9KTsKCg==","id":"S13.2.2_A15_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDMuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwidmFyIG9iaiA9IHt9XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRkFDVE9SWSA9IGZ1bmN0aW9uICgpewogICAgdGhpcy5wcm9wID0gMTsKICAgIHZhciBvYmogPSB7fTsKICAgIG9iai5wcm9wID0gIkEiOwogICAgb2JqLnNsb3QgPSB0aGlzOwogICAgcmV0dXJuIG9iajsKfQoKX19vYmogPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2Ygb2JqICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIG9iaiA9PT0nK3R5cGVvZiBvYmopOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gIkEiKSB7CgkkRVJST1IoJyMyOiBfX29iai5wcm9wID09PSAiQSIuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK19fb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19vYmouc2xvdC5wcm9wICE9PTEpIHsKCSRFUlJPUignIzM6IF9fb2JqLnNsb3QucHJvcCA9PT0xLiBBY3R1YWw6IF9fb2JqLnNsb3QucHJvcCA9PT0nK19fb2JqLnNsb3QucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A15_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNV9UNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTVfVDQuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiB0aGUgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eSBmb3IgYSBGdW5jdGlvbiBvYmplY3QgRiBpcyBjYWxsZWQsIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gZGVjbGFyZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJvZ3JhbSBhbmQgXCJvYmpcIiBwcm9wZXJ0eSBpcyBkZWNsYXJlZCB3aXRoIFwib2JqID0ge31cIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19GQUNUT1JZID0gZnVuY3Rpb24oKXsKICAgIHRoaXMucHJvcCA9IDE7CiAgICBvYmogPSB7fTsKICAgIG9iai5wcm9wID0gIkEiOwogICAgb2JqLnNsb3QgPSB0aGlzOwogICAgcmV0dXJuIG9iajsKfQoKX19vYmogPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChvYmoucHJvcCAhPT0gIkEiKSB7CgkkRVJST1IoJyMxOiBvYmoucHJvcCA9PT0gIkEiLiBBY3R1YWw6IG9iai5wcm9wID09PScrb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gIkEiKSB7CgkkRVJST1IoJyMyOiBfX29iai5wcm9wID09PSAiQSIuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK29iai5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9fb2JqLnNsb3QucHJvcCAhPT0xKSB7CgkkRVJST1IoJyMzOiBfX29iai5zbG90LnByb3AgPT09MS4gQWN0dWFsOiBfX29iai5zbG90LnByb3AgPT09JytvYmouc2xvdC5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.2_A15_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNl9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTZfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIHdpdGhpbiBhIG5ldyBzdGF0ZW1lbnQgaXMgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBcImlzIF9fb2JqID0gbmV3IGZ1bmN0aW9uIF9fZnVuYygpe3RoaXMucHJvcD0xO31cIiBhcyBGdW5jdGlvbkV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBuZXcgZnVuY3Rpb24gX19mdW5jKCl7dGhpcy5wcm9wPTE7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLnByb3AgIT09IDEpIHsKCSRFUlJPUignIzI6IF9fb2JqLnByb3AgPT09IDEuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK19fb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNQppZiAodHlwZW9mIF9fZnVuYyAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzU6IHR5cGVvZiBfX2Z1bmMgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6IHR5cGVvZiBfX2Z1bmMgPT09Jyt0eXBlb2YgX19mdW5jKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A16_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNl9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTZfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIHdpdGhpbiBhIG5ldyBzdGF0ZW1lbnQgaXMgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBcInZhciBfX29iaiA9IG5ldyBmdW5jdGlvbiBfX2Z1bmMoYXJnKXt0aGlzLnByb3A9YXJnO30oNSlcIiBhcyBGdW5jdGlvbkV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBuZXcgZnVuY3Rpb24gX19mdW5jKGFyZyl7dGhpcy5wcm9wPWFyZzt9KDUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gNSkgewoJJEVSUk9SKCcjMjogX19vYmoucHJvcCA9PT0gNS4gQWN0dWFsOiBfX29iai5wcm9wID09PScrX19vYmoucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmICh0eXBlb2YgX19mdW5jICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMzogdHlwZW9mIF9fZnVuYyA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A16_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExNl9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTZfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIHdpdGhpbiBhIG5ldyBzdGF0ZW1lbnQgaXMgYWRtaXR0ZWQiLAoKZGVzY3JpcHRpb246ICJVc2luZyBcImlzIF9fb2JqID0gbmV3IGZ1bmN0aW9uIF9fZnVuYyhhcmcpe3RoaXMucHJvcD1hcmc7IHJldHVybiB7ZmVhdDogKythcmd9fSg1KVwiIGFzIEZ1bmN0aW9uRXhwcmVzc2lvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZnVuYyAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMgPT09ICJ1bmRlZmluZWQiJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19vYmogPSBuZXcgZnVuY3Rpb24gX19mdW5jKGFyZyl7dGhpcy5wcm9wPWFyZzsgcmV0dXJuIHtmZWF0OiArK2FyZ319KDUpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19vYmoucHJvcCAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMyOiBfX29iai5wcm9wID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19vYmoucHJvcCA9PT0nK19fb2JqLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19vYmouZmVhdCAhPT0gNikgewoJJEVSUk9SKCcjMzogX19vYmouZmVhdCA9PT0gNi4gQWN0dWFsOiBfX29iai5mZWF0ID09PScrX19vYmouZmVhdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmICh0eXBlb2YgX19mdW5jICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjNDogdHlwZW9mIF9fZnVuYyA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogdHlwZW9mIF9fZnVuYyA9PT0nK3R5cGVvZiBfX2Z1bmMpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A16_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExN19UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTdfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIGNvbnRhaW5pbmcgXCJ3aXRoXCIgc3RhdGVtZW50IGlzIGFkbWl0dGVkIiwKCmRlc2NyaXB0aW9uOiAiVGhyb3dpbmcgYW4gZXhjZXB0aW9uIHdpdGhpbiBcIndpdGhcIiBzdGF0ZW1lbnQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHRoaXMucDE9ImFsZXJ0IjsKCl9fb2JqPXtwMToxLGdldFJpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuICJyaWdodCI7fX07CgpnZXRSaWdodD1mdW5jdGlvbigpe3JldHVybiAibmFwcmF2byI7fTsKCnRyeSB7CgkoZnVuY3Rpb24oKXsKICAgICAgICB3aXRoKF9fb2JqKXsKICAgICAgICAgICAgcDE9IncxIjsKICAgICAgICAgICAgZ2V0UmlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fQogICAgICAgICAgICB0aHJvdyBwMTsKICAgICAgICB9CiAgICB9KSgpOwp9IGNhdGNoIChlKSB7CglyZXN1a3QgPSBwMTsKfQoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHAxIT09ImFsZXJ0IikgewoJJEVSUk9SKCcjMTogcDEgPT09ICJhbGVydCIuIEFjdHVhbDogcDE9PT0nK3AxKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKGdldFJpZ2h0KCkhPT0ibmFwcmF2byIpIHsKCSRFUlJPUignIzI6IGdldFJpZ2h0KCkgPT09ICJuYXByYXZvIi4gQWN0dWFsOiBnZXRSaWdodCgpID09PSAnK2dldFJpZ2h0KCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19vYmoucDEhPT0idzEiKSB7CgkkRVJST1IoJyMzOiBfX29iai5wMSA9PT0gIncxIi4gQWN0dWFsOiBfX29iai5wMSA9PT0nK19fb2JqLnAxKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fb2JqLmdldFJpZ2h0KCkhPT1mYWxzZSkgewoJJEVSUk9SKCcjNDogX19vYmouZ2V0UmlnaHQoKSA9PT0gZmFsc2UuIEFjdHVhbDogX19vYmouZ2V0UmlnaHQoKSA9PT0gJytfX29iai5nZXRSaWdodCgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHJlc3VrdCAhPT0gImFsZXJ0IikgewoJJEVSUk9SKCcjNTogcmVzdWt0ID09PSAiYWxlcnQiLiBBY3R1YWw6IHJlc3VrdCA9PT0nK3Jlc3VrdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgcmVzdWt0OwoKCiB9Cn0pOwoK","id":"S13.2.2_A17_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExN19UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTdfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIGNvbnRhaW5pbmcgXCJ3aXRoXCIgc3RhdGVtZW50IGlzIGFkbWl0dGVkIiwKCmRlc2NyaXB0aW9uOiAiSW4gdGhlIGNoZWNrIDQgd2UgcG9wdWxhdGUgZmllbGQgZ2V0UmlnaHQgaW4gX19vYmogb2JqZWN0IHNpbmNlIHZhciBnZXRSaWdodCBkZWNsYXJhdGlvbiBhZGRzIHZhcmlhYmxlIHRvIGZ1bmN0aW9uIHNjb3BlIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBwMT0iYWxlcnQiOwoKdGhpcy5fX29iaj17cDE6MSxnZXRSaWdodDpmdW5jdGlvbigpe3JldHVybiAicmlnaHQiO319OwoKdmFyIGdldFJpZ2h0PWZ1bmN0aW9uKCl7cmV0dXJuICJuYXByYXZvIjt9OwoKcmVzdWt0PShmdW5jdGlvbigpewogICAgd2l0aChfX29iail7CiAgICAgICAgcDE9IncxIjsKICAgICAgICB2YXIgZ2V0UmlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fTsKICAgICAgICByZXR1cm4gcDE7CiAgICB9Cn0pKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChwMSE9PSJhbGVydCIpIHsKCSRFUlJPUignIzE6IHAxID09PSAiYWxlcnQiLiBBY3R1YWw6IHAxPT09JytwMSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChnZXRSaWdodCgpIT09Im5hcHJhdm8iKSB7CgkkRVJST1IoJyMyOiBnZXRSaWdodCgpID09PSAibmFwcmF2byIuIEFjdHVhbDogZ2V0UmlnaHQoKT09PScrZ2V0UmlnaHQoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX29iai5wMSE9PSJ3MSIpIHsKCSRFUlJPUignIzM6IF9fb2JqLnAxID09PSAidzEiLiBBY3R1YWw6IF9fb2JqLnAxID09PScrX19vYmoucDEpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjNAppZiAoX19vYmouZ2V0UmlnaHQoKSE9PWZhbHNlKSB7CgkkRVJST1IoJyM0OiBfX29iai5nZXRSaWdodCgpID09PSBmYWxzZS4gQWN0dWFsOiBfX29iai5nZXRSaWdodCgpPT09JytfX29iai5nZXRSaWdodCgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKHJlc3VrdCAhPT0gIncxIikgewoJJEVSUk9SKCcjNTogcmVzdWt0ID09PSAidzEiLiBBY3R1YWw6IHJlc3VrdCA9PT0nK3Jlc3VrdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgcmVzdWt0OwoKCiB9Cn0pOwoK","id":"S13.2.2_A17_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIGdsb2JhbCBzY29wZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGEgPSAxOwoKdmFyIF9fZnVuYz0gZnVuY3Rpb24oKXtyZXR1cm4gYTt9OwoKdmFyIF9fb2JqID0ge2E6Mn07Cgp3aXRoIChfX29iaikKewogICAgcmVzdWx0ID0gX19mdW5jKCk7Cn0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHJlc3VsdCAhPT0gMSkgewoJJEVSUk9SKCcjMTogcmVzdWx0ID09PSAxLiBBY3R1YWw6IHJlc3VsdCA9PT0nK3Jlc3VsdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A19_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIG9iamVjdCBzY29wZS4gVXNpbmcgXCJ3aXRoXCIgc3RhdGVtZW50IiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYSA9IDE7Cgp2YXIgX19vYmogPSB7YToyfTsKCndpdGggKF9fb2JqKQp7CiAgICByZXN1bHQgPSAoZnVuY3Rpb24oKXtyZXR1cm4gYTt9KSgpOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChyZXN1bHQgIT09IDIpIHsKCSRFUlJPUignIzE6IHJlc3VsdCA9PT0gMi4gQWN0dWFsOiByZXN1bHQgPT09JytyZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A19_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDMuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIG9iamVjdCBzY29wZSBhbmQgdGhlbiBhbiBleGNlcHRpb24gaXMgdGhyb3duIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYSA9IDE7Cgp2YXIgX19vYmogPSB7YToyfTsKCnRyeSB7Cgl3aXRoIChfX29iaikKICAgIHsKICAgICAgICB2YXIgX19mdW5jID0gZnVuY3Rpb24gKCl7cmV0dXJuIGE7fTsKICAgICAgICB0aHJvdyAzOwogICAgfQp9IGNhdGNoIChlKSB7Cgk7Cn0KCnJlc3VsdCA9IF9fZnVuYygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAocmVzdWx0ICE9PSAyKSB7CgkkRVJST1IoJyMxOiByZXN1bHQgPT09IDIuIEFjdHVhbDogcmVzdWx0ID09PScrcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKCiB9Cn0pOwoK","id":"S13.2.2_A19_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UNCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDQuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIGhpZXJhcmNoaWNhbCBvYmplY3Qgc2NvcGUgYW5kIHRoZW4gYW4gZXhjZXB0aW9uIGlzIHRocm93biIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIGEgPSAxOwoKdmFyIF9fb2JqID0ge2E6MixfX29iajp7YTozfX07Cgp0cnkgewoJd2l0aCAoX19vYmopCiAgICB7CiAgICAgICAgd2l0aChfX29iail7CiAgICAgICAgICAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe3JldHVybiBhO307CiAgICAgICAgICAgIHRocm93IDU7CiAgICAgICAgfQogICAgfQp9IGNhdGNoIChlKSB7Cgk7Cn0KCnJlc3VsdCA9IF9fZnVuYygpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAocmVzdWx0ICE9PSAzKSB7CgkkRVJST1IoJyMxOiByZXN1bHQgPT09IDMuIEFjdHVhbDogcmVzdWx0ID09PScrcmVzdWx0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKCiB9Cn0pOwoK","id":"S13.2.2_A19_T4"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UNSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDUuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIG9iamVjdCBzY29wZSwgdGhlbiBhbiBleGNlcHRpb24gaXMgdGhyb3duIGFuZCB0aGUgb2JqZWN0IGlzIGRlbGV0ZWQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBhID0gMTsKCnZhciBfX29iaiA9IHthOjJ9OwoKd2l0aCAoX19vYmopCnsKICAgIHRyeSB7CiAgICAgICAgCiAgICAJdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgIH0KICAgICAgICB0aHJvdyAzOwogICAgfSBjYXRjaCAoZSkgewogICAgCTsKICAgIH0KfQoKZGVsZXRlIF9fb2JqOwoKcmVzdWx0ID0gX19mdW5jKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChyZXN1bHQgIT09IDIpIHsKCSRFUlJPUignIzE6IHJlc3VsdCA9PT0gMi4gQWN0dWFsOiByZXN1bHQgPT09JytyZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A19_T5"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UNiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDYuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgaW4gdGhlIFwib2JqZWN0LT5kby13aGlsZVwiIHNjb3BlLCB0aGVuIHRoZSBvYmplY3QgaXMgZGVsZXRlZCBhbmQgYW5vdGhlciBvYmplY3Qgd2l0aCB0aGUgc2FtZSBuYW1lIGlzIGRlY2xhcmVkIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgYSA9IDE7Cgp2YXIgX19vYmogPSB7YToyfTsKCndpdGggKF9fb2JqKQp7CiAgICBkbyB7CiAgICAgICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgIH0KICAgIH0gd2hpbGUoMCk7Cn0KCmRlbGV0ZSBfX29iajsKCnZhciBfX29iaiA9IHthOjN9OwoKd2l0aCAoX19vYmopCnsKICAgIHJlc3VsdCA9IF9fZnVuYygpOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChyZXN1bHQgIT09IDIpIHsKCSRFUlJPUignIzE6IHJlc3VsdCA9PT0gMi4gQWN0dWFsOiByZXN1bHQgPT09JytyZXN1bHQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCgoKCgogfQp9KTsKCg==","id":"S13.2.2_A19_T6"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExOV9UOCIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjIuMl9BMTlfVDguanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25cJ3Mgc2NvcGUgY2hhaW4gaXMgc3RhcnRlZCB3aGVuIGl0IGlzIGRlY2xhcmVkIiwKCmRlc2NyaXB0aW9uOiAiRnVuY3Rpb24gaXMgZGVjbGFyZWQgbXVsdGlwbHkgdGltZXMiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzAKaWYgKHR5cGVvZiBfX2Z1bmMgIT09ICJ1bmRlZmluZWQiKSB7CgkkRVJST1IoJyMwOiB0eXBlb2YgX19mdW5jID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiB0eXBlb2YgX19mdW5jID09PScrdHlwZW9mIF9fZnVuYyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgYSA9IDEsIGIgPSAiYSI7Cgp2YXIgX19vYmogPSB7YToyfTsKCndpdGggKF9fb2JqKQp7CiAgICB3aGlsZSgxKXsKICAgICAgICB2YXIgIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgIH0KICAgICAgICBicmVhazsKICAgIH0KfQoKZGVsZXRlIF9fb2JqOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jKCkgIT09IDIpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSAyLiBBY3R1YWw6IF9fZnVuYygpID09PScrX19mdW5jKCkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fb2JqID0ge2E6MyxiOiJiIn07Cgp3aXRoIChfX29iaikKewogICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCkKICAgIHsKICAgICAgICByZXR1cm4gYjsKICAgIH0KfQoKZGVsZXRlIF9fb2JqOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jKCkhPT0iYiIpIHsKCSRFUlJPUignIzI6IF9fZnVuYygpPT09ImIiLiBBY3R1YWw6IF9fZnVuYygpPT09JytfX2Z1bmMoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp3aXRoICh7YTo5OSxiOiJjIn0pCnsKICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogICAgLy9DSEVDSyMzCiAgICBpZiAoX19mdW5jKCkgIT09ICJiIikgewogICAgCSRFUlJPUignIzM6IF9fZnVuYygpPT09ImIiLiBBY3R1YWw6IF9fZnVuYygpPT09JytfX2Z1bmMoKSk7CiAgICB9CiAgICAvLwogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCn0KCiB9Cn0pOwoK","id":"S13.2.2_A19_T8"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0ExX1QxLmpzIiwKCmFzc2VydGlvbjogIlNpbmNlIGEgZnVuY3Rpb24gaXMgYW4gb2JqZWN0LCBpdCBtaWdodCBiZSBzZXQgdG8gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBhIG5ldyBjcmVhdGVkIG9iamVjdCB0aHJvdWdoIFtbQ29uc3RydWN0XV0gcHJvcGVydHkiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwiZnVuY3Rpb24gX19mdW5jKClcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fTU9OU1RFUj0ibW9uc3RlciI7CnZhciBfX1BSRURBVE9SPSJwcmVkYXRvciI7CgpmdW5jdGlvbiBfX1BST1RPKCl7fTsKCnRyeXsKICAgIF9fUFJPVE8udHlwZT1fX01PTlNURVI7Cn0KY2F0Y2goZSl7CiAgICAkRVJST1IoJyMwOiBfX1BST1RPLnR5cGU9X19NT05TVEVSIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJykKfQoKZnVuY3Rpb24gX19GQUNUT1JZKCl7dGhpcy5uYW1lPV9fUFJFREFUT1J9OwoKX19GQUNUT1JZLnByb3RvdHlwZT1fX1BST1RPOwoKdmFyIF9fbW9uc3RlciA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoX19QUk9UTy5pc1Byb3RvdHlwZU9mKF9fbW9uc3RlcikpKSB7CgkkRVJST1IoJyMxOiBfX1BST1RPLmlzUHJvdG90eXBlT2YoX19tb25zdGVyKSBtdXN0IGJlIHRydWUnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbW9uc3Rlci50eXBlICE9PV9fTU9OU1RFUikgewoJJEVSUk9SKCcjMjogX19tb25zdGVyLnR5cGUgPT09X19NT05TVEVSLiBBY3R1YWw6IF9fbW9uc3Rlci50eXBlID09PScrX19tb25zdGVyLnR5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0ExX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0ExX1QyLmpzIiwKCmFzc2VydGlvbjogIlNpbmNlIGEgZnVuY3Rpb24gaXMgYW4gb2JqZWN0LCBpdCBtaWdodCBiZSBzZXQgdG8gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBhIG5ldyBjcmVhdGVkIG9iamVjdCB0aHJvdWdoIFtbQ29uc3RydWN0XV0gcHJvcGVydHkiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwidmFyIF9fUFJPVE8gPSBmdW5jdGlvbigpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX01PTlNURVI9Im1vbnN0ZXIiOwp2YXIgX19QUkVEQVRPUj0icHJlZGF0b3IiOwoKdmFyIF9fUFJPVE8gPSBmdW5jdGlvbigpe307Cgp0cnl7CiAgICBfX1BST1RPLnR5cGU9X19NT05TVEVSOwp9CmNhdGNoKGUpewogICAgJEZBSUwoJyMwOiBfX1BST1RPLnR5cGU9X19NT05TVEVSIGRvZXMgbm90IGxlYWQgdG8gdGhyb3dpbmcgZXhjZXB0aW9uJykKfQoKdmFyIF9fRkFDVE9SWSA9IGZ1bmN0aW9uKCl7dGhpcy5uYW1lPV9fUFJFREFUT1J9OwoKX19GQUNUT1JZLnByb3RvdHlwZT1fX1BST1RPOwoKdmFyIF9fbW9uc3RlciA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKCEoX19QUk9UTy5pc1Byb3RvdHlwZU9mKF9fbW9uc3RlcikpKSB7CgkkRVJST1IoJyMxOiBfX1BST1RPLmlzUHJvdG90eXBlT2YoX19tb25zdGVyKSBtdXN0IGJlIHRydWUnKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fbW9uc3Rlci50eXBlICE9PV9fTU9OU1RFUikgewoJJEVSUk9SKCcjMjogX19tb25zdGVyLnR5cGUgPT09X19NT05TVEVSLiBBY3R1YWw6IF9fbW9uc3Rlci50eXBlID09PScrX19tb25zdGVyLnR5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0EyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0EyLmpzIiwKCmFzc2VydGlvbjogIlNpbmNlIGEgZnVuY3Rpb24gaXMgYW4gb2JqZWN0LCBpdCBtaWdodCBiZSBzZXQgdG8gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBhIG5ldyBjcmVhdGVkIG9iamVjdCB0aHJvdWdoIFtbQ29uc3RydWN0XV0gcHJvcGVydHksIiwKCmRlc2NyaXB0aW9uOiAiVHJ5aW5nIHRvIFtbY2FsbF1dIHRoaXMgZnVuY3Rpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX1BMQU5UPSJmbG93ZXIiOwp2YXIgX19ST1NFPSJyb3NlIjsKCmZ1bmN0aW9uIF9fUFJPVE8oKXt9OwoKdHJ5ewogICAgX19QUk9UTy50eXBlPV9fUExBTlQ7Cn0KY2F0Y2goZSl7CiAgICAkRVJST1IoJyMwOiBfX1BST1RPLnR5cGU9X19QTEFOVCBkb2VzIG5vdCBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpCn0KCmZ1bmN0aW9uIF9fRkFDVE9SWSgpe3RoaXMubmFtZT1fX1JPU0V9OwoKX19GQUNUT1JZLnByb3RvdHlwZT1fX1BST1RPOwoKdmFyIF9fcm9zZSA9IG5ldyBfX0ZBQ1RPUlkoKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5ewogICAgX19yb3NlKCk7CiAgICAkRVJST1IoJyMxOiBfX3Jvc2UoKSBsZWFkIHRvIHRocm93aW5nIGV4Y2VwdGlvbicpOwp9IGNhdGNoKGUpewogICAgaWYgKCEoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikpIHsKICAgIAkkRVJST1IoJyMyOiBFeGNlcHRpb24gVHlwZSBpcyBUeXBlRXJyb3IuIEFjdHVhbDogZXhjZXB0aW9uID09PScrZSk7CiAgICB9Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0EzX1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0EzX1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX0ZBQ1RPUlkoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX0ZBQ1RPUlkoKXt9OwpfX0ZBQ1RPUlkucHJvdG90eXBlPTE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19GQUNUT1JZLnByb3RvdHlwZSAhPT0gJ251bWJlcicpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PSBcJ251bWJlclwnLiBBY3R1YWw6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PScrKHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2RldmljZSkpKSB7CgkkRVJST1IoJyMyOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoX19kZXZpY2UpID09PSB0cnVlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A3_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0EzX1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0EzX1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJ2YXIgX19GQUNUT1JZID0gZnVuY3Rpb24oKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19GQUNUT1JZID0gZnVuY3Rpb24oKXt9OwpfX0ZBQ1RPUlkucHJvdG90eXBlPTE7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19GQUNUT1JZLnByb3RvdHlwZSAhPT0gJ251bWJlcicpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PSBcJ251bWJlclwnLiBBY3R1YWw6IHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlID09PScrKHR5cGVvZiBfX0ZBQ1RPUlkucHJvdG90eXBlKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgp2YXIgX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICghKE9iamVjdC5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2RldmljZSkpKSB7CgkkRVJST1IoJyMyOiBPYmplY3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoX19kZXZpY2UpID09PSB0cnVlJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A3_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E0X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E0X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX0ZBQ1RPUlkoKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19DVUJFPSJjdWJlIjsKCmZ1bmN0aW9uIF9fRkFDVE9SWSgpewp9OwpfX0ZBQ1RPUlkucHJvdG90eXBlPXsgc2hhcGU6X19DVUJFLCBwcmludFNoYXBlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hhcGU7fSB9OwoKdmFyIF9fZGV2aWNlID0gbmV3IF9fRkFDVE9SWSgpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19kZXZpY2UucHJpbnRTaGFwZSA9PT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2RldmljZS5wcmludFNoYXBlICE9PSB1bmRlZmluZWQuIEFjdHVhbDogX19kZXZpY2UucHJpbnRTaGFwZSA9PT0nK19fZGV2aWNlLnByaW50U2hhcGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19kZXZpY2UucHJpbnRTaGFwZSgpICE9PSBfX0NVQkUpIHsKCSRFUlJPUignIzI6IF9fZGV2aWNlLnByaW50U2hhcGUoKSA9PT0gX19DVUJFLiBBY3R1YWw6IF9fZGV2aWNlLnByaW50U2hhcGUoKSA9PT0nK19fZGV2aWNlLnByaW50U2hhcGUoKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E0X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E0X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJfX0ZBQ1RPUlkgPSBmdW5jdGlvbigpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fQ1VCRT0iY3ViZSI7CgpfX0ZBQ1RPUlkgPSBmdW5jdGlvbigpe307CgpfX0ZBQ1RPUlkucHJvdG90eXBlPXsgc2hhcGU6X19DVUJFLCBwcmludFNoYXBlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hhcGU7fSB9OwoKX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2RldmljZS5wcmludFNoYXBlID09PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZGV2aWNlLnByaW50U2hhcGUgIT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX2RldmljZS5wcmludFNoYXBlID09PScrX19kZXZpY2UucHJpbnRTaGFwZSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2RldmljZS5wcmludFNoYXBlKCkgIT09IF9fQ1VCRSkgewoJJEVSUk9SKCcjMjogX19kZXZpY2UucHJpbnRTaGFwZSgpID09PSBfX0NVQkUuIEFjdHVhbDogX19kZXZpY2UucHJpbnRTaGFwZSgpID09PScrX19kZXZpY2UucHJpbnRTaGFwZSgpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E1X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E1X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX0ZBQ1RPUlkoYXJnMSwgYXJnMilcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgX19WT0xVTUU9ODsKX19SRUQ9InJlZCI7Cl9fSUQ9MTIzNDI7Cl9fVE9QPTEuMTsKX19CT1RUT009MC4wOwpfX0xFRlQ9MC4wOwoKCmZ1bmN0aW9uIF9fRkFDVE9SWShhcmcxLCBhcmcyKXsKCXRoaXMudm9sdW1lPV9fVk9MVU1FOwoJY29sb3I9X19SRUQ7Cgl0aGlzLmlkPWFyZzE7Cgl0b3A9YXJnMjsKCXRoaXMuYm90dG9tPWFyZ3VtZW50c1szXTsKCWxlZnQ9YXJndW1lbnRzWzRdOwp9OwoKX19kZXZpY2UgPSBuZXcgX19GQUNUT1JZKF9fSUQsIF9fVE9QLCBfX0JPVFRPTSwgX19MRUZUKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZGV2aWNlLmNvbG9yICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZGV2aWNlLmNvbG9yID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19kZXZpY2UuY29sb3IgPT09JytfX2RldmljZS5jb2xvcik7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2RldmljZS52b2x1bWUgIT09IF9fVk9MVU1FKSB7CgkkRVJST1IoJyMyOiBfX2RldmljZS52b2x1bWUgPT09IF9fVk9MVU1FLiBBY3R1YWw6IF9fZGV2aWNlLnZvbHVtZSA9PT0nK19fZGV2aWNlLnZvbHVtZSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2RldmljZS50b3AgIT09IHVuZGVmaW5lZCkgewoJJEVSUk9SKCcjMzogX19kZXZpY2UudG9wID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19kZXZpY2UudG9wID09PScrX19kZXZpY2UudG9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzQKaWYgKF9fZGV2aWNlLmlkICE9PSBfX0lEKSB7CgkkRVJST1IoJyM0OiBfX2RldmljZS5pZCA9PT0gX19JRC4gQWN0dWFsOiBfX2RldmljZS5pZCA9PT0nK19fZGV2aWNlLmlkKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzUKaWYgKF9fZGV2aWNlLmxlZnQgIT09IHVuZGVmaW5lZCkgewoJJEVSUk9SKCcjNTogX19kZXZpY2UubGVmdCA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZGV2aWNlLmxlZnQgPT09JytfX2RldmljZS5sZWZ0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzYKaWYgKF9fZGV2aWNlLmJvdHRvbSAhPT0gX19CT1RUT00pIHsKCSRFUlJPUignIzY6IF9fZGV2aWNlLmJvdHRvbSA9PT0gX19CT1RUT00uIEFjdHVhbDogX19kZXZpY2UuYm90dG9tID09PScrX19kZXZpY2UuYm90dG9tKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E1X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E1X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJfX0ZBQ1RPUlkgPSBmdW5jdGlvbihhcmcxLCBhcmcyKVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBfX1ZPTFVNRT04OwpfX1JFRD0icmVkIjsKX19JRD0xMjM0MjsKX19UT1A9MS4xOwpfX0JPVFRPTT0wLjA7Cl9fTEVGVD0wLjA7CgoKX19GQUNUT1JZID0gZnVuY3Rpb24oYXJnMSwgYXJnMil7Cgl0aGlzLnZvbHVtZT1fX1ZPTFVNRTsKCWNvbG9yPV9fUkVEOwoJdGhpcy5pZD1hcmcxOwoJdG9wPWFyZzI7Cgl0aGlzLmJvdHRvbT1hcmd1bWVudHNbM107CglsZWZ0PWFyZ3VtZW50c1s0XTsKfTsKCl9fZGV2aWNlID0gbmV3IF9fRkFDVE9SWShfX0lELCBfX1RPUCwgX19CT1RUT00sIF9fTEVGVCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2RldmljZS5jb2xvciAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2RldmljZS5jb2xvciA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZGV2aWNlLmNvbG9yID09PScrX19kZXZpY2UuY29sb3IpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19kZXZpY2Uudm9sdW1lICE9PSBfX1ZPTFVNRSkgewoJJEVSUk9SKCcjMjogX19kZXZpY2Uudm9sdW1lID09PSBfX1ZPTFVNRS4gQWN0dWFsOiBfX2RldmljZS52b2x1bWUgPT09JytfX2RldmljZS52b2x1bWUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19kZXZpY2UudG9wICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzM6IF9fZGV2aWNlLnRvcCA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fZGV2aWNlLnRvcCA9PT0nK19fZGV2aWNlLnRvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM0CmlmIChfX2RldmljZS5pZCAhPT0gX19JRCkgewoJJEVSUk9SKCcjNDogX19kZXZpY2UuaWQgPT09IF9fSUQuIEFjdHVhbDogX19kZXZpY2UuaWQgPT09JytfX2RldmljZS5pZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM1CmlmIChfX2RldmljZS5sZWZ0ICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzU6IF9fZGV2aWNlLmxlZnQgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX2RldmljZS5sZWZ0ID09PScrX19kZXZpY2UubGVmdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyM2CmlmIChfX2RldmljZS5ib3R0b20gIT09IF9fQk9UVE9NKSB7CgkkRVJST1IoJyM2OiBfX2RldmljZS5ib3R0b20gPT09IF9fQk9UVE9NLiBBY3R1YWw6IF9fZGV2aWNlLmJvdHRvbSA9PT0nK19fZGV2aWNlLmJvdHRvbSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A5_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E2X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E2X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJfX2Z1bmMgPSBmdW5jdGlvbihhcmcpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRk9PPSJmb29WYWx1ZSI7Cl9fQkFSPSJiYXJWYWx1ZSI7CgpfX2Z1bmMgPSBmdW5jdGlvbihhcmcpewoJdGhpcy5mb289YXJnOwogICAgcmV0dXJuIDA7Cgl0aGlzLmJhcj1hcmd1bWVudHNbMV07Cn07CgpfX29iaiA9IG5ldyBfX2Z1bmMoX19GT08sIF9fQkFSKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fb2JqLmZvbyE9PV9fRk9PKSB7CgkkRVJST1IoJyMxOiBfX29iai5mb28gPT09IF9fRk9PLiBBY3R1YWw6IF9fb2JqLmZvbz09PScrX19vYmouZm9vKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqLmJhciE9PXVuZGVmaW5lZCkgewoJJEVSUk9SKCcjMjogX19vYmouYmFyID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19vYmouYmFyPT09JytfX29iai5iYXIpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A6_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E2X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E2X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX2Z1bmMgKGFyZylcIiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRk9PPSJmb29WYWx1ZSI7CnZhciBfX0JBUj0iYmFyVmFsdWUiOwoKZnVuY3Rpb24gX19mdW5jIChhcmcpewoJdGhpcy5mb289YXJnOwogICAgcmV0dXJuIHRydWU7Cgl0aGlzLmJhcj1hcmd1bWVudHNbMV07Cn07Cgp2YXIgX19vYmogPSBuZXcgX19mdW5jKF9fRk9PLCBfX0JBUik7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29iai5mb28hPT1fX0ZPTykgewoJJEVSUk9SKCcjMTogX19vYmouZm9vID09PSBfX0ZPTy4gQWN0dWFsOiBfX29iai5mb289PT0nK19fb2JqLmZvbyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX29iai5iYXIhPT11bmRlZmluZWQpIHsKCSRFUlJPUignIzI6IF9fb2JqLmJhciA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9fb2JqLmJhcj09PScrX19vYmouYmFyKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2.2_A6_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E3X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E3X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJhcyBfX2Z1bmMgPSBmdW5jdGlvbihhcmcpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX0ZSU1Q9Im9uZSI7CnZhciBfX1NDTkQ9InR3byI7CgpmdW5jdGlvbiBfX2Z1bmMgKGFyZzEsIGFyZzIpewoJdGhpcy5maXJzdD1hcmcxOwoJdmFyIF9fb2JqPXtzZWNvbmQ6YXJnMn07CiAgICByZXR1cm4gX19vYmo7CgkKfTsKCnZhciBfX29ial9fID0gbmV3IF9fZnVuYyhfX0ZSU1QsIF9fU0NORCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX29ial9fLmZpcnN0ICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fb2JqX18uZmlyc3QgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX29ial9fLmZpcnN0PT09JytfX29ial9fLmZpcnN0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fb2JqX18uc2Vjb25kICE9PSBfX1NDTkQpIHsKCSRFUlJPUignIzI6IF9fb2JqX18uc2Vjb25kID09PSBfX1NDTkQuIEFjdHVhbDogX19vYmpfXy5zZWNvbmQgPT09JytfX29ial9fLnNlY29uZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A7_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E3X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E3X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIFwiZnVuY3Rpb24gYXMgZnVuY3Rpb24gX19mdW5jIChhcmcpXCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIF9fRlJTVD0ib25lIjsKX19TQ05EPSJ0d28iOwoKX19mdW5jID0gZnVuY3Rpb24oYXJnMSwgYXJnMil7Cgl0aGlzLmZpcnN0PWFyZzE7Cgl2YXIgX19vYmo9e3NlY29uZDphcmcyfTsKICAgIHJldHVybiBfX29iajsKCQp9OwoKX19vYmpfXyA9IG5ldyBfX2Z1bmMoX19GUlNULCBfX1NDTkQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19vYmpfXy5maXJzdCAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX29ial9fLmZpcnN0ID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19vYmpfXy5maXJzdD09PScrX19vYmpfXy5maXJzdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX29ial9fLnNlY29uZCAhPT0gX19TQ05EKSB7CgkkRVJST1IoJyMyOiBfX29ial9fLnNlY29uZCA9PT0gX19TQ05ELiBBY3R1YWw6IF9fb2JqX18uc2Vjb25kID09PScrX19vYmpfXy5zZWNvbmQpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2.2_A7_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E4X1QxIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E4X1QxLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2hvc2UgcHJvdG90eXBlIGNvbnRhaW5zIFwicmV0dXJuXCIgZm9sbG93ZWQgYnkgZGVjbGFyYXRpb24gb2YgYW5vdGhlciBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRlJTVD0ib25lIjsKdmFyIF9fU0NORD0idHdvIjsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbihhcmcxLCBhcmcyKXsKCXRoaXMuZmlyc3Q9YXJnMTsKCQoJX19ndW5jLnByb3A9YXJnMjsKICAgIHJldHVybiBfX2d1bmM7CiAgICAvLyBmdW5jdGlvbiBkZWNsYXJhdGlvbgogICAgZnVuY3Rpb24gX19ndW5jKGFyZyl7cmV0dXJuICsrYXJnfTsKCQp9OwoKdmFyIF9faW5zdGFuY2UgPSBuZXcgX19mdW5jKF9fRlJTVCwgX19TQ05EKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9faW5zdGFuY2UuZmlyc3QgIT09IHVuZGVmaW5lZCkgewoJJEVSUk9SKCcjMTogX19pbnN0YW5jZS5maXJzdCA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6IF9faW5zdGFuY2UuZmlyc3QgPT09JytfX2luc3RhbmNlLmZpcnN0KTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9faW5zdGFuY2UucHJvcCE9PV9fU0NORCkgewoJJEVSUk9SKCcjMjogX19pbnN0YW5jZS5wcm9wID09PSBfX1NDTkQuIEFjdHVhbDogX19pbnN0YW5jZS5wcm9wID09PScrX19pbnN0YW5jZS5wcm9wKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzMKaWYgKF9faW5zdGFuY2UoMSkhPT0gMikgewoJJEVSUk9SKCcjMjogX19pbnN0YW5jZSgxKT09PSAyLiBBY3R1YWw6IF9faW5zdGFuY2UoMSkgPT09JytfX2luc3RhbmNlKDEpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.2_A8_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E4X1QyIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E4X1QyLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2hvc2UgcHJvdG90eXBlIGNvbnRhaW5zIGRlY2xhcmF0aW9uIG9mIGFub3RoZXIgZnVuY3Rpb24gZGVjbGFyZWQgYXMgYSB2YXJpYWJsZSIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRlJTVD0ib25lIjsKdmFyIF9fU0NORD0idHdvIjsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbihhcmcxLCBhcmcyKXsKCXRoaXMuZmlyc3Q9YXJnMTsKCXZhciBfX2d1bmMgPSBmdW5jdGlvbihhcmcpe3JldHVybiBhcmcrPSJCQSJ9OwoJX19ndW5jLnByb3A9YXJnMjsKICAgIHJldHVybiBfX2d1bmM7CgkKfTsKCnZhciBfX2luc3RhbmNlID0gbmV3IF9fZnVuYyhfX0ZSU1QsIF9fU0NORCk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2luc3RhbmNlLmZpcnN0ICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9faW5zdGFuY2UuZmlyc3QgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiBfX2luc3RhbmNlLmZpcnN0ID09PScrX19pbnN0YW5jZS5maXJzdCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2luc3RhbmNlLnByb3AhPT1fX1NDTkQpIHsKCSRFUlJPUignIzI6IF9faW5zdGFuY2UucHJvcCA9PT0gX19TQ05ELiBBY3R1YWw6IF9faW5zdGFuY2UucHJvcCA9PT0nK19faW5zdGFuY2UucHJvcCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2luc3RhbmNlKCJTQU0iKSE9PSAiU0FNQkEiKSB7CgkkRVJST1IoJyMyOiBfX2luc3RhbmNlKCJTQU0iKSA9PT0gIlNBTUJBIi4gQWN0dWFsOiBfX2luc3RhbmNlKCJTQU0iKSA9PT0nK19faW5zdGFuY2UoIlNBTSIpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2.2_A8_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E4X1QzIiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E4X1QzLmpzIiwKCmFzc2VydGlvbjogIldoZW4gdGhlIFtbQ29uc3RydWN0XV0gcHJvcGVydHkgZm9yIGEgRnVuY3Rpb24gb2JqZWN0IEYgaXMgY2FsbGVkOiIsCgpkZXNjcmlwdGlvbjogIkNyZWF0aW5nIGEgZnVuY3Rpb24gd2hvc2UgcHJvdG90eXBlIGNvbnRhaW5zIGRlY2xhcmF0aW9uIG9mIGFub3RoZXIgZnVuY3Rpb24gZGVmaW5lZCBieSB1c2luZyBGdW5jdGlvbi5jYWxsIG1ldGhvZCIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgdmFyIF9fRlJTVD0ib25lIjsKdmFyIF9fU0NORD0idHdvIjsKCnZhciBfX2Z1bmMgPSBmdW5jdGlvbihhcmcxLCBhcmcyKXsKCXRoaXMuZmlyc3Q9YXJnMTsKCXZhciBfX2d1bmMgPSBGdW5jdGlvbi5jYWxsKHRoaXMsImFyZyIsInJldHVybiArK2FyZzsiKTsKCV9fZ3VuYy5wcm9wPWFyZzI7CiAgICByZXR1cm4gX19ndW5jOwoJCn07Cgp2YXIgX19pbnN0YW5jZSA9IG5ldyBfX2Z1bmMoX19GUlNULCBfX1NDTkQpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19pbnN0YW5jZS5maXJzdCAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2luc3RhbmNlLmZpcnN0ID09PSB1bmRlZmluZWQuIEFjdHVhbDogX19pbnN0YW5jZS5maXJzdCA9PT0nK19faW5zdGFuY2UuZmlyc3QpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19pbnN0YW5jZS5wcm9wIT09X19TQ05EKSB7CgkkRVJST1IoJyMyOiBfX2luc3RhbmNlLnByb3AgPT09IF9fU0NORC4gQWN0dWFsOiBfX2luc3RhbmNlLnByb3AgPT09JytfX2luc3RhbmNlLnByb3ApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMwppZiAoX19pbnN0YW5jZSgxKSE9PSAyKSB7CgkkRVJST1IoJyMyOiBfX2luc3RhbmNlKDEpPT09IDIuIEFjdHVhbDogX19pbnN0YW5jZSgxKSA9PT0nK19faW5zdGFuY2UoMSkpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKCiB9Cn0pOwoK","id":"S13.2.2_A8_T3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMi4yX0E5IiwKCnBhdGg6ICIxM19GdW5jdGlvbl9EZWZpbml0aW9uXDEzLjJfQ3JlYXRpbmdfRnVuY3Rpb25fT2JqZWN0c1xTMTMuMi4yX0E5LmpzIiwKCmFzc2VydGlvbjogIkNhbGxpbmcgYSBmdW5jdGlvbiBhcyBhIGNvbnN0cnVjdG9yIGlzIGluYWRtaXNzaWJsZSBhcyBsb25nIGFzIHRoaXMuYW55X0Z1bmN0aW9uIGlzIGNhbGxlZCBiZWZvcmUgaXQgaXMgZGVjbGFyZWQiLAoKZGVzY3JpcHRpb246ICJDYWxsaW5nIGEgZnVuY3Rpb24gYXMgYSBjb25zdHJ1Y3RvciIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgZnVuY3Rpb24gRkFDVE9SWSgpewogICB0aGlzLmlkID0gMDsKICAgCiAgIHRoaXMuaWQgPSB0aGlzLmZ1bmMoKTsKICAgCiAgIHRoaXMuZnVuYyA9IGZ1bmN0aW9uICgpewogICAgICByZXR1cm4gNTsKICAgfQogIAp9Ci8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKdHJ5IHsKCXZhciBvYmogPSBuZXcgRkFDVE9SWSgpOwoJJEVSUk9SKCcjMTogdmFyIG9iaiA9IG5ldyBGQUNUT1JZKCkgbGVhZCB0byB0aHJvd2luZyBleGNlcHRpb24nKTsKfSBjYXRjaCAoZSkge30KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2.2_A9"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMV9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTFfVDEuanMiLAoKYXNzZXJ0aW9uOiAiQSBcInByb3RvdHlwZVwiIHByb3BlcnR5IGlzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBmb3IgZXZlcnkgZnVuY3Rpb24iLAoKZGVzY3JpcHRpb246ICJVc2luZyBcImZ1bmN0aW9uIF9fZnVuYygpe31cIiBhcyBhIEZ1bmN0aW9uRGVjbGFyYXRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMucHJvdG90eXBlID09PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYy5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2_A1_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMV9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTFfVDIuanMiLAoKYXNzZXJ0aW9uOiAiQSBcInByb3RvdHlwZVwiIHByb3BlcnR5IGlzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBmb3IgZXZlcnkgZnVuY3Rpb24iLAoKZGVzY3JpcHRpb246ICJVc2luZyBcInZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe31cIiBhcyBhIEZ1bmN0aW9uRGVjbGFyYXRpb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMucHJvdG90eXBlID09PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYy5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCcpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S13.2_A1_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMl9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTJfVDEuanMiLAoKYXNzZXJ0aW9uOiAiTmVzdGVkIGZ1bmN0aW9uIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIk5lc3RpbmcgbGV2ZWwgaXMgdHdvIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgX19KRURJPSJqZWRpIjsKCmZ1bmN0aW9uIF9fRlVOQygpewogICAgZnVuY3Rpb24gX19HVU5DKCl7CiAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1swXTsKICAgIH07CiAgICAKICAgIHJldHVybiBfX0dVTkM7Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX0ZVTkMoKShfX0pFREkpICE9PSBfX0pFREkpIHsKCSRFUlJPUignIzE6IF9fRlVOQygpKF9fSkVESSkgPT09IF9fSkVESS4gQWN0dWFsOiBfX0ZVTkMoKShfX0pFREkpID09PScrX19GVU5DKCkoX19KRURJKSk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S13.2_A2_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMl9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTJfVDIuanMiLAoKYXNzZXJ0aW9uOiAiTmVzdGVkIGZ1bmN0aW9uIGFyZSBhZG1pdHRlZCIsCgpkZXNjcmlwdGlvbjogIk5lc3RpbmcgbGV2ZWwgaXMgdGhyZWUiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX1JPQk9UPSJDM1BPIjsKCmZ1bmN0aW9uIF9fRlVOQygpewogICAgZnVuY3Rpb24gX19HVU5DKCl7CiAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1swXTsKICAgIH07CiAgICBmdW5jdGlvbiBfX0hVTkMoKXsKICAgICAgICByZXR1cm4gX19HVU5DOwogICAgfTsKICAgIHJldHVybiBfX0hVTkM7Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX0ZVTkMoKSgpKF9fUk9CT1QpICE9PSBfX1JPQk9UKSB7CgkkRVJST1IoJyMxOiBfX0ZVTkMoKSgpKF9fUk9CT1QpID09PSBfX1JPQk9ULiBBY3R1YWw6IF9fRlVOQygpKCkoX19ST0JPVCkgPT09JytfX0ZVTkMoKSgpKF9fUk9CT1QpKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiB9Cn0pOwoK","id":"S13.2_A2_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BMyIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTMuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBGIGlzIHNldCB0byB0aGUgbnVtYmVyIG9mIGZvcm1hbCBwcm9wZXJ0aWVzIHNwZWNpZmllZCBpbiBGb3JtYWxQYXJhbWV0ZXJMaXN0IiwKCmRlc2NyaXB0aW9uOiAiQ3JlYXRpbmcgZnVuY3Rpb25zIHdpdGggdmFyaW91cyBGb3JtYWxQYXJhbWV0ZXJMaXN0IGFuZCBjaGVja2luZyB0aGVpciBsZW5ndGhzIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICBmdW5jdGlvbiBfX2Z1bmMoKXt9OwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoX19mdW5jLmxlbmd0aCAhPT0gMCkgewoJJEVSUk9SKCcjMTogX19mdW5jLmxlbmd0aCA9PT0gMC4gQWN0dWFsOiBfX2Z1bmMubGVuZ3RoID09PScrX19mdW5jLmxlbmd0aCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2d1bmMoYSxiLGMpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2d1bmMubGVuZ3RoICE9PSAzKSB7CgkkRVJST1IoJyMyOiBfX2d1bmMubGVuZ3RoID09PSAzLiBBY3R1YWw6IF9fZ3VuYy5sZW5ndGggPT09JytfX2d1bmMubGVuZ3RoKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgogfQp9KTsKCg==","id":"S13.2_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BNF9UMSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTRfVDEuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQgdGhlIGZvbGxvd2luZyBzdGVwcyBmcm9tIDkgdG8gMTEgdGFrZSBwbGFjZSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIHByb3RvdHlwZSwgcHJvdG90eXBlLmNvbnN0cnVjdG9yIHByb3BlcnRpZXMgYW5kIHtEb250RW51bX0gcHJvcGVydHkgb2YgYSBjb25zdHJ1Y3Rvci4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jLnByb3RvdHlwZSAhPT0gJ29iamVjdCcpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2Z1bmMucHJvdG90eXBlID09PSBcJ29iamVjdFwnLiBBY3R1YWw6IHR5cGVvZiBfX2d1bmMucHJvdG90eXBlID09PScrdHlwZW9mIF9fZ3VuYy5wcm90b3R5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19mdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciAhPT0gX19mdW5jKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMucHJvdG90eXBlLmNvbnN0cnVjdG9yID09PSBfX2Z1bmMuIEFjdHVhbDogX19ndW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0nK19fZ3VuYy5wcm90b3R5cGUuY29uc3RydWN0b3IpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQ7Cgpmb3IgKF9fcHJvcCBpbiBfX2Z1bmMucHJvdG90eXBlKXsKICAgIGlmIChfX3Byb3AgPSAnY29uc3RydWN0b3InKQogICAgICAgIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQgPSB0cnVlOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkKSB7CgkkRVJST1IoJyMzOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PSBmYWxzZS4gQWN0dWFsOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PScrX19jb25zdHJ1Y3Rvcl93YXNfX2VudW1lZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKCgoKCiB9Cn0pOwoK","id":"S13.2_A4_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BNF9UMiIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTRfVDIuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQgdGhlIGZvbGxvd2luZyBzdGVwcyBmcm9tIDkgdG8gMTEgdGFrZSBwbGFjZSIsCgpkZXNjcmlwdGlvbjogIkNoZWNraW5nIHByb3RvdHlwZSwgcHJvdG90eXBlLmNvbnN0cnVjdG9yIHByb3BlcnRpZXMgYW5kIHtEb250RW51bX0gcHJvcGVydHkgb2YgYSBjb25zdHJ1Y3Rvci4iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBfX2d1bmMgPSBmdW5jdGlvbigpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19ndW5jLnByb3RvdHlwZSAhPT0gJ29iamVjdCcpIHsKCSRFUlJPUignIzE6IHR5cGVvZiBfX2d1bmMucHJvdG90eXBlID09PSBcJ29iamVjdFwnLiBBY3R1YWw6IHR5cGVvZiBfX2d1bmMucHJvdG90eXBlID09PScrdHlwZW9mIF9fZ3VuYy5wcm90b3R5cGUpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoX19ndW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciAhPT0gX19ndW5jKSB7CgkkRVJST1IoJyMyOiBfX2d1bmMucHJvdG90eXBlLmNvbnN0cnVjdG9yID09PSBfX2d1bmMuIEFjdHVhbDogX19ndW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0nK19fZ3VuYy5wcm90b3R5cGUuY29uc3RydWN0b3IpOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKdmFyIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQ7Cgpmb3IgKF9fcHJvcCBpbiBfX2d1bmMucHJvdG90eXBlKXsKICAgIGlmIChfX3Byb3AgPSAnY29uc3RydWN0b3InKQogICAgICAgIF9fY29uc3RydWN0b3Jfd2FzX19lbnVtZWQgPSB0cnVlOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMzCmlmIChfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkKSB7CgkkRVJST1IoJyMzOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PSBmYWxzZS4gQWN0dWFsOiBfX2NvbnN0cnVjdG9yX3dhc19fZW51bWVkID09PScrX19jb25zdHJ1Y3Rvcl93YXNfX2VudW1lZCk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKCgoKCiB9Cn0pOwoK","id":"S13.2_A4_T2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTMuMl9BNSIsCgpwYXRoOiAiMTNfRnVuY3Rpb25fRGVmaW5pdGlvblwxMy4yX0NyZWF0aW5nX0Z1bmN0aW9uX09iamVjdHNcUzEzLjJfQTUuanMiLAoKYXNzZXJ0aW9uOiAiV2hlbiBGdW5jdGlvbiBvYmplY3QoRikgaXMgY29uc3RydWN0ZWQiLAoKZGVzY3JpcHRpb246ICJGdW5jdGlvbi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZigpIGlzIHVzZWQiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIGZ1bmN0aW9uIF9fZnVuYygpe307CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICghKEZ1bmN0aW9uLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9fZnVuYykpKSB7CgkkRVJST1IoJyMxOiBGdW5jdGlvbi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihfX2Z1bmMpJyk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgoKdmFyIF9fZ3VuYyA9IGZ1bmN0aW9uKCl7fTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKCEoRnVuY3Rpb24ucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoX19ndW5jKSkpIHsKCSRFUlJPUignIzE6IEZ1bmN0aW9uLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKF9fZ3VuYyknKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCgoKIH0KfSk7Cgo=","id":"S13.2_A5"}]}} \ No newline at end of file diff --git a/website/resources/scripts/testcases/14_Program.json b/website/resources/scripts/testcases/14_Program.json index 5ecf0f43e7..a4c98c3ac5 100644 --- a/website/resources/scripts/testcases/14_Program.json +++ b/website/resources/scripts/testcases/14_Program.json @@ -1 +1 @@ -{"testsCollection":{"name":"Chapter - 14_Program","numTests":"5","tests":[{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTRfQTEiLAoKcGF0aDogIjE0X1Byb2dyYW1cUzE0X0ExLmpzIiwKCmFzc2VydGlvbjogIkZ1bmN0aW9uRXhwcmVzc2lvbiBtdXN0IGJlIGxvY2FsZWQgaW4gYSByZWFjaGVhYmxlIGZyYWdtZW50IG9mIHRoZSBwcm9ncmFtIiwKCmRlc2NyaXB0aW9uOiAiRGVjbGFyaW5nIGEgZnVuY3Rpb24gd2l0aGluIGFuIFwiaWZcIiBFeHByZXNzaW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICB2YXIgVEhFUkUgPSAiSSdtIHRoZXJlIjsKdmFyIEhFUkUgPSAiSSdtIGhlcmUiOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAoIF9fZnVuYyAhPT0gdW5kZWZpbmVkKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiAgX19mdW5jID09PScrIF9fZnVuYyAgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmlmICh0cnVlKXsKICAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbigpe3JldHVybiBIRVJFO307Cn0gZWxzZSB7CiAgICB2YXIgX19mdW5jID0gZnVuY3Rpb24gKCl7cmV0dXJuIFRIRVJFO307Cn07CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChfX2Z1bmMoKSAhPT0gSEVSRSkgewoJJEVSUk9SKCcjMjogX19mdW5jKCkgPT09IEhFUkUuIEFjdHVhbDogIF9fZnVuYygpID09PScrIF9fZnVuYygpICApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S14_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTRfQTIiLAoKcGF0aDogIjE0X1Byb2dyYW1cUzE0X0EyLmpzIiwKCmFzc2VydGlvbjogIkZ1bmN0aW9uRGVjbGFyYXRpb24gY2Fubm90IGJlIGxvY2FsZWQgaW5zaWRlIGFuIEV4cHJlc3Npb24iLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoaW4gYW4gXCJpZlwiIEV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKHR5cGVvZiBmICE9PSAndW5kZWZpbmVkJykgewoJJEVSUk9SKCcjMTogdHlwZW9mIGYgPT09IFwndW5kZWZpbmVkXCcuIEFjdHVhbDogIHR5cGVvZiBmID09PScrIHR5cGVvZiBmICApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAoZnVuY3Rpb24gZihhcmcpewoJaWYgKGFyZz09PTApCgkgICByZXR1cm4gMTsKCWVsc2UKCSAgIHJldHVybiBmKGFyZy0xKSphcmc7Cn0oMykhPT02KSB7CgkkRVJST1IoJyMyOiBGdW5jdGlvbkRlY2xhcmF0aW9uIGNhbm5vdCBiZSBsb2NhbGVkIGluc2lkZSBhbiBFeHByZXNzaW9uJyk7Cn07Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIH0KfSk7Cgo=","id":"S14_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTRfQTMiLAoKcGF0aDogIjE0X1Byb2dyYW1cUzE0X0EzLmpzIiwKCmFzc2VydGlvbjogIkdsb2JhbCBGdW5jdGlvbkRlY2xhcmF0aW9uIGNhbm5vdCBiZSBkZWZpbmVkIHdpdGhpbiB0aGUgYm9keSBvZiBhbm90aGVyIEZ1bmN0aW9uRGVjbGFyYXRpb24iLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoaW4gdGhlIGJvZHkgb2YgYW5vdGhlciBmdW5jdGlvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIF9fZnVuYyAhPT0gImZ1bmN0aW9uIikgewoJJEVSUk9SKCcjMTogdHlwZW9mIF9fZnVuYyA9PT0gImZ1bmN0aW9uIi4gQWN0dWFsOiAgdHlwZW9mIF9fZnVuYyA9PT0nKyB0eXBlb2YgX19mdW5jICApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMgppZiAodHlwZW9mIF9fZ3VuYyAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzI6IHR5cGVvZiBfX2d1bmMgPT09ICJ1bmRlZmluZWQiLiBBY3R1YWw6ICB0eXBlb2YgX19ndW5jID09PScrIHR5cGVvZiBfX2d1bmMgICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpmdW5jdGlvbiBfX2Z1bmMoKXsKICAgIGZ1bmN0aW9uIF9fZ3VuYygpe3JldHVybiB0cnVlfTsKfQoKIH0KfSk7Cgo=","id":"S14_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTRfQTVfVDEiLAoKcGF0aDogIjE0X1Byb2dyYW1cUzE0X0E1X1QxLmpzIiwKCmFzc2VydGlvbjogIlRoZSBJZGVudGlmZXIgd2l0aGluIGEgRnVuY3Rpb25EZWNsYXJhdGlvbiBjYW4gYmUgd3JpdHRlbiBpbiBib3RoIGxldHRlcnMgYW5kIHVuaWNvZGUiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwiZnVuY3Rpb24gX19cXHUwMDY2XFx1MDA3NVxcdTAwNmVcXHUwMDYzKCl7cmV0dXJuIFwiYm90aFwifVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoKSAhPT0gImJvdGgiKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSA9PT0gImJvdGgiLiBBY3R1YWw6ICBfX2Z1bmMoKSA9PT0nKyBfX2Z1bmMoKSAgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiYXNjaWkifTsKZnVuY3Rpb24gXHUwMDVmXHUwMDVmXHUwMDY2XHUwMDc1XHUwMDZlXHUwMDYzKCl7cmV0dXJuICJ1bmljb2RlIn07Ly9fX2Z1bmMgaW4gdW5pY29kZQpmdW5jdGlvbiBfX1x1MDA2Nlx1MDA3NVx1MDA2ZVx1MDA2Mygpe3JldHVybiAiYm90aCJ9Oy8vX19mdW5jIGluIHVuaWNvZGUKCiB9Cn0pOwoK","id":"S14_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTRfQTVfVDIiLAoKcGF0aDogIjE0X1Byb2dyYW1cUzE0X0E1X1QyLmpzIiwKCmFzc2VydGlvbjogIlRoZSBJZGVudGlmZXIgd2l0aGluIGEgRnVuY3Rpb25EZWNsYXJhdGlvbiBjYW4gYmUgd3JpdHRlbiBpbiBib3RoIGxldHRlcnMgYW5kIHVuaWNvZGUiLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoIFwiZnVuY3Rpb24gXFx1MDA1ZlxcdTAwNWZcXHUwMDY2XFx1MDA3NVxcdTAwNmVcXHUwMDYzKCl7cmV0dXJuIFwidW5pY29kZVwifVwiIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmIChfX2Z1bmMoKSAhPT0gInVuaWNvZGUiKSB7CgkkRVJST1IoJyMxOiBfX2Z1bmMoKSA9PT0gInVuaWNvZGUiLiBBY3R1YWw6ICBfX2Z1bmMoKSA9PT0nKyBfX2Z1bmMoKSAgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuYygpe3JldHVybiAiYXNjaWkifTsKZnVuY3Rpb24gXHUwMDVmXHUwMDVmXHUwMDY2XHUwMDc1XHUwMDZlXHUwMDYzKCl7cmV0dXJuICJ1bmljb2RlIn07Ly9fX2Z1bmMgaW4gdW5pY29kZQoKIH0KfSk7Cgo=","id":"S14_A5_T2"}]}} \ No newline at end of file +{"testsCollection":{"name":"Chapter - 14_Program","numTests":"5","tests":[{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTQuMF9BMSIsCgpwYXRoOiAiMTRfUHJvZ3JhbVwxNC4wX0NoYXB0ZXJcUzE0LjBfQTEuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25FeHByZXNzaW9uIG11c3QgYmUgbG9jYWxlZCBpbiBhIHJlYWNoZWFibGUgZnJhZ21lbnQgb2YgdGhlIHByb2dyYW0iLAoKZGVzY3JpcHRpb246ICJEZWNsYXJpbmcgYSBmdW5jdGlvbiB3aXRoaW4gYW4gXCJpZlwiIEV4cHJlc3Npb24iLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIHZhciBUSEVSRSA9ICJJJ20gdGhlcmUiOwp2YXIgSEVSRSA9ICJJJ20gaGVyZSI7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICggX19mdW5jICE9PSB1bmRlZmluZWQpIHsKCSRFUlJPUignIzE6IF9fZnVuYyA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICBfX2Z1bmMgPT09JysgX19mdW5jICApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKaWYgKHRydWUpewogICAgdmFyIF9fZnVuYyA9IGZ1bmN0aW9uKCl7cmV0dXJuIEhFUkU7fTsKfSBlbHNlIHsKICAgIHZhciBfX2Z1bmMgPSBmdW5jdGlvbiAoKXtyZXR1cm4gVEhFUkU7fTsKfTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzIKaWYgKF9fZnVuYygpICE9PSBIRVJFKSB7CgkkRVJST1IoJyMyOiBfX2Z1bmMoKSA9PT0gSEVSRS4gQWN0dWFsOiAgX19mdW5jKCkgPT09JysgX19mdW5jKCkgICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S14.0_A1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTQuMF9BMiIsCgpwYXRoOiAiMTRfUHJvZ3JhbVwxNC4wX0NoYXB0ZXJcUzE0LjBfQTIuanMiLAoKYXNzZXJ0aW9uOiAiRnVuY3Rpb25EZWNsYXJhdGlvbiBjYW5ub3QgYmUgbG9jYWxlZCBpbnNpZGUgYW4gRXhwcmVzc2lvbiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGhpbiBhbiBcImlmXCIgRXhwcmVzc2lvbiIsCgp0ZXN0OiBmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vQ0hFQ0sjMQppZiAodHlwZW9mIGYgIT09ICd1bmRlZmluZWQnKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgZiA9PT0gXCd1bmRlZmluZWRcJy4gQWN0dWFsOiAgdHlwZW9mIGYgPT09JysgdHlwZW9mIGYgICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmIChmdW5jdGlvbiBmKGFyZyl7CglpZiAoYXJnPT09MCkKCSAgIHJldHVybiAxOwoJZWxzZQoJICAgcmV0dXJuIGYoYXJnLTEpKmFyZzsKfSgzKSE9PTYpIHsKCSRFUlJPUignIzI6IEZ1bmN0aW9uRGVjbGFyYXRpb24gY2Fubm90IGJlIGxvY2FsZWQgaW5zaWRlIGFuIEV4cHJlc3Npb24nKTsKfTsKLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogfQp9KTsKCg==","id":"S14.0_A2"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTQuMF9BMyIsCgpwYXRoOiAiMTRfUHJvZ3JhbVwxNC4wX0NoYXB0ZXJcUzE0LjBfQTMuanMiLAoKYXNzZXJ0aW9uOiAiR2xvYmFsIEZ1bmN0aW9uRGVjbGFyYXRpb24gY2Fubm90IGJlIGRlZmluZWQgd2l0aGluIHRoZSBib2R5IG9mIGFub3RoZXIgRnVuY3Rpb25EZWNsYXJhdGlvbiIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGhpbiB0aGUgYm9keSBvZiBhbm90aGVyIGZ1bmN0aW9uIiwKCnRlc3Q6IGZ1bmN0aW9uIHRlc3RjYXNlKCkgewogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMxCmlmICh0eXBlb2YgX19mdW5jICE9PSAiZnVuY3Rpb24iKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YgX19mdW5jID09PSAiZnVuY3Rpb24iLiBBY3R1YWw6ICB0eXBlb2YgX19mdW5jID09PScrIHR5cGVvZiBfX2Z1bmMgICk7Cn0KLy8KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLy9DSEVDSyMyCmlmICh0eXBlb2YgX19ndW5jICE9PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMjogdHlwZW9mIF9fZ3VuYyA9PT0gInVuZGVmaW5lZCIuIEFjdHVhbDogIHR5cGVvZiBfX2d1bmMgPT09JysgdHlwZW9mIF9fZ3VuYyAgKTsKfQovLwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCmZ1bmN0aW9uIF9fZnVuYygpewogICAgZnVuY3Rpb24gX19ndW5jKCl7cmV0dXJuIHRydWV9Owp9CgogfQp9KTsKCg==","id":"S14.0_A3"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTQuMF9BNV9UMSIsCgpwYXRoOiAiMTRfUHJvZ3JhbVwxNC4wX0NoYXB0ZXJcUzE0LjBfQTVfVDEuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIElkZW50aWZlciB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGNhbiBiZSB3cml0dGVuIGluIGJvdGggbGV0dGVycyBhbmQgdW5pY29kZSIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBfX1xcdTAwNjZcXHUwMDc1XFx1MDA2ZVxcdTAwNjMoKXtyZXR1cm4gXCJib3RoXCJ9XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygpICE9PSAiYm90aCIpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSAiYm90aCIuIEFjdHVhbDogIF9fZnVuYygpID09PScrIF9fZnVuYygpICApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuICJhc2NpaSJ9OwpmdW5jdGlvbiBcdTAwNWZcdTAwNWZcdTAwNjZcdTAwNzVcdTAwNmVcdTAwNjMoKXtyZXR1cm4gInVuaWNvZGUifTsvL19fZnVuYyBpbiB1bmljb2RlCmZ1bmN0aW9uIF9fXHUwMDY2XHUwMDc1XHUwMDZlXHUwMDYzKCl7cmV0dXJuICJib3RoIn07Ly9fX2Z1bmMgaW4gdW5pY29kZQoKIH0KfSk7Cgo=","id":"S14.0_A5_T1"},{"code":"RVM1SGFybmVzcy5yZWdpc3RlclRlc3QoIHsKaWQ6ICJTMTQuMF9BNV9UMiIsCgpwYXRoOiAiMTRfUHJvZ3JhbVwxNC4wX0NoYXB0ZXJcUzE0LjBfQTVfVDIuanMiLAoKYXNzZXJ0aW9uOiAiVGhlIElkZW50aWZlciB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGNhbiBiZSB3cml0dGVuIGluIGJvdGggbGV0dGVycyBhbmQgdW5pY29kZSIsCgpkZXNjcmlwdGlvbjogIkRlY2xhcmluZyBhIGZ1bmN0aW9uIHdpdGggXCJmdW5jdGlvbiBcXHUwMDVmXFx1MDA1ZlxcdTAwNjZcXHUwMDc1XFx1MDA2ZVxcdTAwNjMoKXtyZXR1cm4gXCJ1bmljb2RlXCJ9XCIiLAoKdGVzdDogZnVuY3Rpb24gdGVzdGNhc2UoKSB7CiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovL0NIRUNLIzEKaWYgKF9fZnVuYygpICE9PSAidW5pY29kZSIpIHsKCSRFUlJPUignIzE6IF9fZnVuYygpID09PSAidW5pY29kZSIuIEFjdHVhbDogIF9fZnVuYygpID09PScrIF9fZnVuYygpICApOwp9Ci8vCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZnVuY3Rpb24gX19mdW5jKCl7cmV0dXJuICJhc2NpaSJ9OwpmdW5jdGlvbiBcdTAwNWZcdTAwNWZcdTAwNjZcdTAwNzVcdTAwNmVcdTAwNjMoKXtyZXR1cm4gInVuaWNvZGUifTsvL19fZnVuYyBpbiB1bmljb2RlCgogfQp9KTsKCg==","id":"S14.0_A5_T2"}]}} \ No newline at end of file diff --git a/website/resources/scripts/testcases/SputnikGlobalScope.js b/website/resources/scripts/testcases/SputnikGlobalScope.js index e4908e6ec0..e728bfebd4 100644 --- a/website/resources/scripts/testcases/SputnikGlobalScope.js +++ b/website/resources/scripts/testcases/SputnikGlobalScope.js @@ -346,7 +346,7 @@ GlobalScopeTests["S12.9_A1_T6"]={"assertion":"Appearing of \"return\" without a GlobalScopeTests["S12.9_A1_T7"]={"assertion":"Appearing of \"return\" without a function body leads to syntax error","description":"Checking if execution of \"return x\" with no function, placed inside Block, fails","id":"S12.9_A1_T7","path":"12_Statement\\12.9_The_return_Statement\\S12.9_A1_T7.js","negative":"."}; GlobalScopeTests["S12.9_A1_T8"]={"assertion":"Appearing of \"return\" without a function body leads to syntax error","description":"Checking if execution of \"return x\" with no function, placed into a loop, fails","id":"S12.9_A1_T8","path":"12_Statement\\12.9_The_return_Statement\\S12.9_A1_T8.js","negative":"."}; GlobalScopeTests["S12.9_A1_T9"]={"assertion":"Appearing of \"return\" without a function body leads to syntax error","description":"Checking if execution of \"return\", placed into a catch Block, fails","id":"S12.9_A1_T9","path":"12_Statement\\12.9_The_return_Statement\\S12.9_A1_T9.js","negative":"."}; -GlobalScopeTests["S13_A7_T3"]={"assertion":"The FunctionBody must be SourceElements","description":"Checking if execution of \"function __func(){\\A\\B\\C}\" fails","id":"S13_A7_T3","path":"13_Function_Definition\\S13_A7_T3.js","negative":"."}; +GlobalScopeTests["S13.0_A7_T3"]={"assertion":"The FunctionBody must be SourceElements","description":"Checking if execution of \"function __func(){\\A\\B\\C}\" fails","id":"S13.0_A7_T3","path":"13_Function_Definition\\13.0_Chapter\\S13.0_A7_T3.js","negative":"."}; GlobalScopeTests["S15.10.2.11_A1_T2"]={"assertion":"DecimalEscape :: DecimalIntegerLiteral [lookahead not in DecimalDigit]","description":"It is an error if n is greater than the total number of left capturing parentheses in the entire regular expression","id":"S15.10.2.11_A1_T2","path":"15_Native\\15.10_RegExp_Objects\\15.10.2_Pattern_Semantics\\15.10.2.11_DecimalEscape\\S15.10.2.11_A1_T2.js","negative":"."}; GlobalScopeTests["S15.10.2.11_A1_T3"]={"assertion":"DecimalEscape :: DecimalIntegerLiteral [lookahead not in DecimalDigit]","description":"It is an error if n is greater than the total number of left capturing parentheses in the entire regular expression","id":"S15.10.2.11_A1_T3","path":"15_Native\\15.10_RegExp_Objects\\15.10.2_Pattern_Semantics\\15.10.2.11_DecimalEscape\\S15.10.2.11_A1_T3.js","negative":"."}; GlobalScopeTests["S15.1_A1_T1"]={"assertion":"The global object does not have a [[Construct]] property","description":"It is not possible to use the global object as a constructor","id":"S15.1_A1_T1","path":"15_Native\\15.1_The_Global_Object\\S15.1_A1_T1.js","negative":"."}; diff --git a/website/resources/scripts/testcases/testcaseslist.json b/website/resources/scripts/testcases/testcaseslist.json index fdfd5867f6..9c27b3b9f8 100644 --- a/website/resources/scripts/testcases/testcaseslist.json +++ b/website/resources/scripts/testcases/testcaseslist.json @@ -1 +1 @@ -{"date":"2011-04-20","numTests":10872,"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/chapter08.json","resources/scripts/testcases/chapter10.json","resources/scripts/testcases/chapter11.json","resources/scripts/testcases/chapter12.json","resources/scripts/testcases/chapter13.json","resources/scripts/testcases/chapter14.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.7.1"} \ No newline at end of file +{"date":"2011-04-20","numTests":10872,"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/chapter08.json","resources/scripts/testcases/chapter10.json","resources/scripts/testcases/chapter11.json","resources/scripts/testcases/chapter12.json","resources/scripts/testcases/chapter13.json","resources/scripts/testcases/chapter14.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.7.2"} \ No newline at end of file